-
script erweitern und es geht nicht :(
<?php
if (isset($submit)) {
if(strlen($name)==0) {
$error="Sie habe keinen Namen angegeben";
}
if(strlen($email)==0 {
$error.="Sie habe keine em@il Adresse angegeben";
}
if(strlen($anfrage)==0 {
$error.="Sie das anfragefeld nicht ausgefüllt";
}
//email senden
$recipient="info@ibizatips.de";
$subject="Anfrage";
$header="Form: " . $email . "\n";
$mail_body="Das Formular wurde am " . date("d.m.Y")
. " um " . date("H:i") . "h abgeschickt.\n";
$mail_body.="Eingetragene Werte:\n\n";
$mail_body.="Datum: " . date("d.m.Y") . "\n";
$mail_body.="Zeit: " . date("d.m.Y, H:i:s",time()) . "\n\n";
$mail_body.="Name: " . $name . "\n";
$mail_body.="E-Mail: " . $email . "\n";
$mail_body.="Anfrage: " . $anfrage . "\n\n";
$mail_body.="Systemdaten des Kunden:\n";
$mail_body.="IP: " . $REMOTE_ADDR . "\n";
$mail_body.="System: " . $HTTP_USER_AGENT . "\n";
mail($recipient,$subject,$mail_body,$header);
//bestaetigung der anfrage anzeigen
echo "Vielen Dank für Ihre Anfrage";
}else{
?>
<form action="http://ibiza.kerneln.de/pflege/form2.php" method=post>
<input type="hidden" name="submit" value="1">
<input type="text" name="name" size="35" value=1>
<input type="text" name="email" size="35">
<textarea name="anfrage" cols="30" rows="3"></textarea>
<input type="submit" value="Abschicken">
</form>
<?php
}
?>
das ist mein script...
ohne diesen teil funzt es
if(strlen($name)==0) {
$error="Sie habe keinen Namen angegeben";
}
if(strlen($email)==0 {
$error.="Sie habe keine em@il Adresse angegeben";
}
if(strlen($anfrage)==0 {
$error.="Sie das anfragefeld nicht ausgefüllt";
}
allerdings soll er ja noch überprüfen, ob auch eingaben in den eingabefeldern stehen
kann jemand einen fehler sehen oder anderen vorschlag bezüglich de rüberprüfung machen ??
mit if($name=="") (name, email und anfrage als variablen) ging es auch nicht
-
-
bin php anfänger sorry
also mit $_POST["name"] dann :
am anfang deklarieren oder ersetzen.. kanst mir bei einem beispiel wie bei der $name die 2 zeilen kurz zeigen wies heißen muss ?? bitte
if(strlen($_POST["name"])==0) {
$error="Sie habe keinen Namen angegeben";
}
so??
if(strlen($name)==0) {
$error="Sie habe keinen Namen angegeben";
}
if(strlen($email)==0 {
$error.="Sie habe keine em@il Adresse angegeben";
}
if(strlen($anfrage)==0 {
$error.="Sie das anfragefeld nicht ausgefüllt";
}
-
Registrierter Benutzer
Das was micha meint ist generell richtig... alle Variablen, die von draussen kommen sollte man über $_GET und $_POST bzw. über $_REQUEST holen.
Dein Problem ist, dass du die schließende Klammer ) bei den Ifs nach dem ==0 vergessen hast... schau mal!
Es hilft auch, wenn die PHP Tags des Forums verwendest - das erhöht die übersicht und du siehst die Fehler schneller.
-
Original geschrieben von Gaert
Das was micha meint ist generell richtig... alle Variablen, die von draussen kommen sollte man über $_GET und $_POST bzw. über $_REQUEST holen.
Dein Problem ist, dass du die schließende Klammer ) bei den Ifs nach dem ==0 vergessen hast... schau mal!
Es hilft auch, wenn die PHP Tags des Forums verwendest - das erhöht die übersicht und du siehst die Fehler schneller.
1.
$_POST ... wie genau müsste ichd as schreiben ?
anstat $variable $_POST ??
tags des forums ?? wie meinst das ??
funzt noch nicht:
http://ibiza.kerneln.de/pflege/form2.php
das form zwar schon, aber auch wenn man nix ausfüllt
<?php
if (isset($submit)) {
if(strlen($name)==0) {
$error="Sie habe keinen Namen angegeben";
}
if(strlen($email)==0) {
$error.="Sie habe keine em@il Adresse angegeben";
}
if(strlen($anfrage)==0) {
$error.="Sie das anfragefeld nicht ausgefüllt";
}
//email senden
$recipient="info@ibizatips.de";
$subject="Anfrage";
$header="Form: " . $email . "\n";
$mail_body="Das Formular wurde am " . date("d.m.Y")
. " um " . date("H:i") . "h abgeschickt.\n\n";
$mail_body.="Datum: " . date("d.m.Y") . "\n";
$mail_body.="Zeit: " . date("G.i") . " Uhr" . "\n\n";
$mail_body.="Eingetragene Werte:\n";
$mail_body.="Name: " . $name . "\n";
$mail_body.="E-Mail: " . $email . "\n";
$mail_body.="Anfrage: " . $anfrage . "\n\n";
$mail_body.="Systemdaten des Kunden:\n";
$mail_body.="IP: " . $REMOTE_ADDR . "\n";
$mail_body.="System: " . $HTTP_USER_AGENT . "\n";
mail($recipient,$subject,$mail_body,$header);
//bestaetigung der anfrage anzeigen
echo "Vielen Dank für Ihre Anfrage";
}else{
?>
<form action="http://ibiza.kerneln.de/pflege/form2.php" method=post>
<input type="hidden" name="submit" value="1">
<input type="text" name="name" size="35" value=1>
<input type="text" name="email" size="35">
<textarea name="anfrage" cols="30" rows="3"></textarea>
<input type="submit" value="Abschicken">
</form>
<?php
}
?>
-
Hallo,
aus Sicherheitsgründen wurde in deiner php.ini (Konfigurationsdatei für PHP) register_globals auf off gesetzt. Deswegen kannst du auf die Postvariable "name" nicht mit $name, sondern mußt mit $_POST["name"] auf die Variable, zugreifen.
also statt:
if (isset($submit)) {
if(strlen($name)==0) {
$error="Sie habe keinen Namen angegeben";
}
if(strlen($email)==0) {
$error.="Sie habe keine em@il Adresse angegeben";
}
if(strlen($anfrage)==0) {
$error.="Sie das anfragefeld nicht ausgefüllt";
}
dies:
if (isset($_POST["submit"])) {
if(strlen($_POST["name"])==0) {
$error="Sie habe keinen Namen angegeben";
}
if(strlen($_POST["email"])==0) {
$error.="Sie habe keine em@il Adresse angegeben";
}
if(strlen($_POST["anfrage"])==0) {
$error.="Sie haben das Anfragefeld nicht ausgefüllt";
}
statt strlen($_POST["name"])==0 geht auch:
if(empty($_POST["name"]))
oder if(!isset($_POST["name"])) wie bei der Variablen submit
Offe
-
Registrierter Benutzer
Und die PHP-Tags finden sich beim Posten direkt über dem Texteingabefeld in Form eines Buttons mit der Bezeichnung PHP wieder. Bei der Codeeingabe einmal klicken für öffnende PHP-Tags, Code eingeben und am Ende nochmal klicken für schliessende PHP-Tags. Dann wird Dein Code schön nichtproportional und mit Syntax-Highlighting gepostet.
Das erhöht eindeutig die Lesbarkeit und die Wahrscheinlichkeit, dass Dir jemand weiterhilft.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen