[GastForen Programmierung/Entwicklung PHP und MySQL Formularprobleme

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Formularprobleme

gassnergrafik
Beiträge gesamt: 175

18. Dez 2007, 11:57
Beitrag # 1 von 7
Bewertung:
(1909 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich verschicke die Daten meines Kontaktformulars über folgenden script:
Code
<? 

if ($name=="")
{
echo "Sie müssen Ihren Namen eingeben!<br>";
}
if ($email=="")
{
echo "Sie müssen Ihre Emailadresse eingeben!<br>";
}
elseif (!ereg("^.+@.+\\..+$", $email))
{
echo "Die eingegebene Emailadresse ist nicht korrekt!<br><br><br>";
}
else
{
$more = "From: $email\r\nReturn-Path: info@webdesign-gassner.de\r\nContent-Type:text";

$subject="Anfrage aus www.euregio-immobilien.eu";

$body="
Anfrage www.euregio-immobilien.eu
_________________________________________

von
Name: $name
__________________

Anschrift: $anschrift
Telefon: $telefon
Email: $email
___________________

Herr/Frau: $name $suchen$bieten
___________________

Objekt: $objekt
zu $mieten$kaufen
Ort: $wo
Preisvorstellung: $preis
Anmerkung: $anmerkung
";

mail("info@webdesign-gassner.de",$subject,$body, $more);

echo "<font size='+1'>Vielen Dank, <br>$name, <br>für Ihre Anfrage!</font><br><br>";
echo "Sie haben folgende Daten weitergeleitet: <hr>";
echo "<font color='navy'>";
echo "Name: $name <br>";
echo "TelefonNr.: $telefon <br>";
echo "Email: $email <br><br>";

echo "Sie: $suchen$bieten";

echo "<br>";
echo "Objekt: $objekt zu $mieten$kaufen<br>";
echo "Ort: $wo <br>";
echo "Preisvorstellung: $preis <br>";
echo "Anmerkung: $anmerkung<br><hr><br><br>";
echo "<font color='red'>Auch die Übertragung kann mal fehlschlagen.</font> Sollten Sie nicht innerhalb der nächsten Woche Antwort von uns bekommen, bitten wir Sie uns direkt anzurufen. DANKE";

}
?>


Bei 1und1 funktioniert es super
http://www.salzbergen-web.de/test/suchen.html

Bei Strato klappt es nicht, aber da muss es funktionieren!
http://www.euregio-immobilien.eu/suchen.html
Hier werden die Felder $name und $email als leer intepretiert!? und die entsprechende Warnung ausgegeben.

Beide Verträge PHP 4.4.7

Kann mir das jemand erklären?
Wo liegt denn da mein Fehler?

Danke
Norbert
X

Formularprobleme

Intermedia
Beiträge gesamt: 1287

18. Dez 2007, 12:01
Beitrag # 2 von 7
Beitrag ID: #327635
Bewertung:
(1904 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,
das liegt an den register_globals. Dein kleines Script scheint schon älter als die Steinzeit zu sein. ;-)

Formulardaten werden im einfachsten Fall so abgefragt:
Code
 
if(isset($_POST[name])){

... das was passieren soll

}


Gruß Sven


als Antwort auf: [#327634]

Formularprobleme

gassnergrafik
Beiträge gesamt: 175

18. Dez 2007, 12:09
Beitrag # 3 von 7
Beitrag ID: #327637
Bewertung:
(1903 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ups, das geht aber schnell. Da ich nicht so PHP-versiert bin und nur bestehende Scripts anpasse, würde ich dich bitten mir zu sagen was ich denn genau in das Script reinschreiben muss. Am besten vom Anfang bis

...
$subject=""

der Rest dürfte ja ok sein, oder?
PS: Es müsste der Name und die Email eigentlich garnicht überprüft werden, könnte sogar wegfallen, wenn es nur weitergegeben wird.

Vielen Dank

Norbert


als Antwort auf: [#327635]

Formularprobleme

Intermedia
Beiträge gesamt: 1287

18. Dez 2007, 12:22
Beitrag # 4 von 7
Beitrag ID: #327638
Bewertung:
(1895 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Norbert,

ausnahmsweise hab ich es mal angepasst, ist aber ungetestet.

Irgendwie wird der gesamte Code leider nicht angezeigt, deshalb mal als Anlage.

Gruß Sven


als Antwort auf: [#327637]
Anhang:
form_2.php (1.74 KB)

Formularprobleme

gassnergrafik
Beiträge gesamt: 175

18. Dez 2007, 12:39
Beitrag # 5 von 7
Beitrag ID: #327644
Bewertung:
(1885 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
HI Sven

du bist ein Goldschatz !

DANKE Es funktioniert

Verstehe aber trotzdem nicht, warum es bei Strato nicht ging und bei 1und1 doch.
Ist mir jetzt auch egal

Norbert


als Antwort auf: [#327638]

Formularprobleme

Intermedia
Beiträge gesamt: 1287

18. Dez 2007, 12:50
Beitrag # 6 von 7
Beitrag ID: #327648
Bewertung:
(1883 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Norbert,

geknutscht wird aber nicht. ;-)

Es hat folgenden Hintergrund, in früheren Versionen von PHP konnten Variablen bei der Übergabe einfach so abgefragt werden: $meineVariable, das geht wenn die register_globals auf on stehen. Sowas ist aber eine Sicherheitslücke, da fremde Variablen eingeschleust werden können egal über welche Methode, GET oder POST.

Die meisten Provider stellen daher die register_globals auf off, damit ist das nicht mehr möglich. Dementsprechend kann man auf herkömmlichen Weg nicht mehr auf die Variable zugreifen. Dies erfolgt jetzt über globale Arrays, z.B. $name = $_POST[name];

Damit kann z.B. niemand mehr die Variable per GET übergeben.

Normalerweise müßten die Variablen noch auf zusätzliche Inhalte geprüft werden da dieses Script manipulierbar ist.

Dazu hat Oesi mal etwas verfasst: http://www.hilfdirselbst.ch/..._P215882.html#215882

Na alles klar? ;-)

Gruß Sven


als Antwort auf: [#327644]

Formularprobleme

gassnergrafik
Beiträge gesamt: 175

19. Dez 2007, 17:55
Beitrag # 7 von 7
Beitrag ID: #327898
Bewertung:
(1827 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Keine Angst, bin nicht schwul

Aber es freut mich, dass ich so schnell und spontan Hilfe bekommen habe, mit der ich auch noch was anfangen konnte.

Die letzte Erklärung ist sehr gelungen, damit habe ich es sogar verstanden

Nochmals vielen Dank und weiter so.

Norbert


als Antwort auf: [#327648]
X