nach dem submit selektieren

essi721

Grünschnabel
Hallo Zusammen,

ich habe eine kleine Frage.

Ich habe einen Formular aus verschiedenen ,input-felder,Dropdown,..
Dropdown feld wird von Datenbank gefüllt.

Nach der Formularsendung werden die Felder validiert(z.B. bei Email-feld wird überprüft
,ob eine Email-syntax richtig ist) und wenn einen Fehler da ist , sollte der Benutzer die Fehler beheben und noch mal senden. und genau hier ist meine Frage:
Wenn der Benutzer die Felder ausfüllt sendet und eine Fehler da ist (besonders bei
Dropdown-feld) ,es wird die ganze Beiträte, die er ausgefüllt hat und schön richtig sind weg
und der sollte alles nochmal schreiben.

weiss jemand ,wie man den Fehler korriegieren kann?
Für jeden Hinweis bedanke ich mich.

ein Teil von code:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<table>
<tr>
<td align="right">Country*:</td>
<td><?php


echo ('<select name="country" size="1">');
echo ('<option>Bitte auswählen</option>');
echo ('<option>-------------------</option>');
while($row = mysql_fetch_array($result))
{
echo ('<option value="');
echo($row['id']);
echo ('">');
echo($row['deu']);
echo ('</option>');
}
echo ('</select>');


?>
</td>

<tr>
<td align="right">Name*:</td>
<td><input name="name" type="text" size="30" maxlength="30"></td>
</tr>
 
Stell halt den Ganzen Code rein und verwende die Code-Funktion vom Forum --> PHP-Blatt.
Also da ich nur so ein Stückchen habe, werd ich dir da nicht mehr machen als es dir zu erklären.

Du musst prüfen ob das Formular schon einmal abgesckt wurde und wenn schon, füllst du eine vorher bestimmte Variable mit dem Inhalt deiner $_POST-Variable.

Nehmen wir das Drop-Down-Feld als Beispiel
HTML:
<form name="jump">
<select name="menu">
<option value="nichts">- - - -</option>
<option value="test">test</option>
<option value="lol">lol</option>
<option value="aaa">aaa</option>
</select>
</form>

Wir wählen etwas aus und es wird wieder an unser Formular gesendet.
Der inhalt befindet sich jetzt nur noch in der Variable:
PHP:
         $_POST["jump"]
Damit der Inhalt jetzt wieder in unser Dropdownfeld kommt müssen wir folgendes tun
PHP:
<form name="jump">
<select name="menu">
<option value="nichts"><?php if(isset($_POST["jump"])){ echo $_POST["jump"]; }else{ echo "- - - -"; } ?></option>
<option value="test">test</option>
<option value="lol">lol</option>
<option value="aaa">aaa</option>
</select>
</form>

Das ganze musst du natürlich noch mit deinem restlichen Script verknüfen. Also nochmal 1 Variable anlegen und schaun ob es passt --> wenn schon dann wird die neue Variable mit der $_POST-Variable gefüllt, wenn nicht dann mit nichts oder keine Ahnung was
 
Zuletzt bearbeitet:
danke schon mal für eure Hilfe.

ich sende den ganzen code:

<?php
include "config.php";
include "checkinput.php";

$dbconect = @mysql_connect("$db_host", "$db_user", "$db_pass");
mysql_select_db("$db");

$error = true;

// Speichern
if($_POST['sbutton'])
{
$country = $_POST['country'];
echo("id-------->".$country."<br>");
//$country = $_POST['country'];
$name = $_POST['name'];
$address_1 = $_POST['address_1'];
$address_2 = $_POST['address_2'];
$telefon = $_POST['telefon'];
$fax = $_POST['fax'];
$contact_1 = $_POST['contact_1'];
$contact_2 = $_POST['contact_2'];
$email_1 = $_POST['email_1'];
$email_2 = $_POST['email_2'];
$url = $_POST['url'];

$temp_name = $_FILES['img']['tmp_name'];
list($width, $height, $type, $attr) = getimagesize($temp_name);

if($width>20 || $height>20){
resize($temp_name);
}

$image = @imagecreatefromjpeg($temp_name);
//$image = @imagecreatefromjpeg($_FILES['img']['tmp_name']);
$size = $_FILES['img']['size'];
//Bilddatei aus temporärer Datei erstellen
$type = $_FILES['img']['type'];
ob_start();
// Ausgabepufferung einschalten
imagejpeg($image);
// JPG an Ausgabepuffer senden
$jpg = ob_get_contents();
// JPG aus Puffer in Variable lesen
ob_end_clean();
// Ausgabepufferung ausschalten / Puffer leeren
$jpg = mysql_real_escape_string($jpg);
$jpg = str_replace('##', '\#\#', $jpg);



if( $country == NULL ||
$name == NULL ||
$address_1 == NULL ||
$address_2 == NULL ||
$telefon == NULL ||
$fax == NULL ||
$contact_1 == NULL ||
$email_1 == NULL ||
$contact_1 == NULL ||
$email_2 == NULL ||
$url == NULL )
{
$error = false;
echo "Bitte alle Pflichtfelder(*) ausfüllen.<br>";
}

if($telefon != NULL && !checkinput($telefon,'numbers') ){
echo "$telefon ist keine Telefonnummer! "."<br>";
$error = false;
}
if( $fax != NULL && !checkinput($fax,'numbers') ){
echo "$fax ist keine Faxnummer"."<br>";
$error = false;
}
if( $email_1 != NULL && !checkinput($email_1,'email') ){
echo "$email_1 ist keine eMail-Adresse"."<br>";
$error = false;
}
if( $email_2 != NULL && !checkinput($email_2,'email') ){
echo "$email_2 ist keine eMail-Adresse"."<br>";
$error = false;
}
if( $url != NULL && !checkinput($url,'url') ){
echo "$url ist keine URL"."<br>";
$error = false;
}


if($width>20 || $height>20)
{
echo "Die hochladende Grafik ist "."$width "."*"." $height"." Pixel.<br>Maximale Grösse beträgt (200*200 Pixel)!"."<br>";
}

if( $error == true ) {
$sql = "INSERT INTO eingabemaske SET
Country = '{$_POST['country']}',
Name = '{$_POST['name']}',
Address1 = '{$_POST['address_1']}',
Address2 = '{$_POST['address_2']}',
Telefon = '{$_POST['telefon']}',
Fax = '{$_POST['fax']}',
Contact1 = '{$_POST['contact_1']}',
Email_1 = '{$_POST['email_1']}',
Contact2 = '{$_POST['contact_2']}',
Email_2 = '{$_POST['email_2']}',
Url = '{$_POST['url']}',
imgdata = '$jpg',
imgtype = '$type'

";
if (@mysql_query($sql)) {
echo "erfolgreich";
}
else {
echo("<P>Fehler: " . mysql_error() . "</p>");
}
}
}

?>

<h1>Eingabemaske</h1>
<?php
$result = mysql_query ("SELECT id,deu FROM country GROUP BY deu");

?>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<table>
<tr>
<td align="right">Country*:</td>
<td><?php


echo ('<select name="country" size="1">');
echo ('<option>Bitte auswählen</option>');
echo ('<option>-------------------</option>');
while($row = mysql_fetch_array($result))
{
echo ('<option value="');
echo($row['id']);
echo ('">');
echo($row['deu']);
echo ('</option>');
}
echo ('</select>');


?>
</td>

<tr>
<td align="right">Name*:</td>
<td><input name="name" type="text" size="30" maxlength="30"></td>
</tr>
<tr>
<td align="right">Address 1*:</td>
<td><input name="address_1" type="text" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">Address 2*:</td>
<td><input name="address_2" type="text" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">Telefon*:</td>
<td><input name="telefon" type="text" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">Fax*:</td>
<td><input name="fax" type="text" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">Contact Person 1*:</td>
<td><input name="contact_1" type="text" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">E-Mail 1*:</td>
<td><input name="email_1" type="text" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">Contact Person 2*:</td>
<td><input name="contact_2" type="text" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">E-Mail 2*:</td>
<td><input name="email_2" type="text" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">URL*:</td>
<td><input name="url" type="text" value="http://" size="30" maxlength="40"></td>
</tr>
<tr>
<td align="right">Upload:</td>
<td><!--<input type="hidden" name="MAX_FILE_SIZE" value="1000000">-->
<input type="file" name="img" size="20">
</td>
</tr>
<tr>
<td align="right"></td>
<td><input class="button" type="submit" name="sbutton" value="Speichern" border="0" ></td>
</tr>
</table>
</form>
 
Zurück