sql abfrage in ein "Formular"

  • Themenstarter Themenstarter puschelchen
  • Beginndatum Beginndatum
Ahhh echo mysql_affected_rows(); gibt 1 aus :)
habs versucht mit Userid <input type="text" name="Userid" value="<?php echo $Userid; ?>" ><br>
hat aber das Feld nicht behalten
 
Und an welcher Stelle/Zeile soll mit obigem Code der Wert von $Userid ausgegeben werden und wo wird dieser Variablen überhaupt ein Wert zugewiesen?
 
Da gibt es viel zu ändern. Als erstes die Reihenfolge. Zuerst prüfen und auslesen, dann das Formular schreiben
PHP:
<html>
<body>
<?php
	error_reporting(E_ALL);
	//Die Felder definieren. Hier eine gekürzte Fassung
	//Die Namen müssen den DB-Feldern entsprechen
	//ggf. können diese auch aus der DB ausgelesen werden
	$rowKeys = array('Userid', 'Vorname', 'Nachname');
	//Leerer Zeile erstellen
	$row = array_fill_keys($rowKeys, '');

	if(isset($_POST['submit'])){
		//TODO: DB-Connect etc.
	    $sql  = "SELECT * FROM {$tbl} WHERE Userid  ='".mysql_real_escape_string($_POST["Userid"])."'";
		//Die Referenz auf das ausgeführte Query hinzufügen
	    $result = mysql_query($sql) or die(mysql_error());
	    if(mysql_affected_rows() ==1){}
			//Die Daten auslesen und unsere leere Zeile überschreiben
		    $row = mysql_fetch_assoc($result);
		}
	} 
?>
	<form action="" method="POST">
		<div align="right"/>
<!-- die Values eintragen: Neu das Value-Atribut des Input-Tags-->
		Userid <input type="text" name="Userid" value="<?php echp $row['Userid']; ?>" /><br>
		Vorname<input type="text" name="Vorname" value="<?php echp $row['Vorname']; ?>" /><br>
		Nachname <input type="text" name="Nachname" value="<?php echp $row['Nachname']; ?>" /><br>
<!-- hier die analog restlichen Felder -->
		<input type=submit name=submit value="Formular absenden" /><br>
	</form>
</body>
</html>
 
Dann schreibe ich den obigen Text einfach nochmal ein bisschen anders:

Schau dir an, an welcher Stelle der Wert von $Userid ausgegeben werden soll und wo dieser Variablen überhaupt ein Wert zugewiesen wird!
 
hab allerdings noch ne Frage wie erweitert ihr das ganze?
PHP:
<?php
    error_reporting(E_ALL);
    $rowKeys = array('Userid', 'Vorname', 'Nachname','Firma','Email','Telefon','Telefon2','Laufzeit','PCLizenzen','Seriennummer','DatumAktiv','DatumEndAktiv');
    $row = array_fill_keys($rowKeys, '');

    if(isset($_POST['submit'])){
        $Host = "localhost";
        $User = "david";
        $Password = "a";
        $dbname = "ABMC-Datenbank";
        $tbl="Kunden";
        mysql_connect('localhost', 'david', 'a') or die  ("Keine Verbindung möglich: ".mysql_error());
        mysql_select_db($dbname) or die  ("Keine Verbindung möglich: ".mysql_error());
        $sql  = "SELECT * FROM {$tbl} WHERE Userid  ='".mysql_real_escape_string($_POST["Userid"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE Vorname  ='".mysql_real_escape_string($_POST["Vorname"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE Nachname  ='".mysql_real_escape_string($_POST["Nachname"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE Firma  ='".mysql_real_escape_string($_POST["Firma"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE Email  ='".mysql_real_escape_string($_POST["Email"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE Laufzeit  ='".mysql_real_escape_string($_POST["Laufzeit"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE PCLizenzen  ='".mysql_real_escape_string($_POST["PCLizenzen"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE Seriennummer  ='".mysql_real_escape_string($_POST["Seriennummer"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE DatumAktiv  ='".mysql_real_escape_string($_POST["DatumAktiv"])."'";
        $sql  = "SELECT * FROM {$tbl} WHERE DatumEndAktiv  ='".mysql_real_escape_string($_POST["DatumEndAktiv"])."'";
        $result = mysql_query($sql) or die(mysql_error());
        if(mysql_affected_rows() ==1){}
            $row = mysql_fetch_assoc($result);
        }
gestern funktionierte es noch heut nicht mehr kann man das auch zusammenfassen?
 
Parse error: syntax error, unexpected T_LOGICAL_AND in /srv/www/htdocs/abfragetest.php on line 16
dasselbe kommt bei OR raus
PHP:
$sql  = "SELECT * FROM {$tbl} WHERE Userid  ='".mysql_real_escape_string($_POST["Userid"]).AND  Vorname  =.mysql_real_escape_string($_POST["Vorname"]). AND Nachname  =.mysql_real_escape_string($_POST["Nachname"])"'
";
Und hier alle Felder die ich abfragen möchte.
PHP:
    <form action="" method="POST">
        <div align="right"/>
        Userid <input type="text" name="Userid" value="<?php echo $row['Userid']; ?>" /><br>
        Vorname<input type="text" name="Vorname" value="<?php echo $row['Vorname']; ?>" /><br>
        Nachname <input type="text" name="Nachname" value="<?php echo $row['Nachname']; ?>" /><br>
        Firma <input type="text" name="Firma" value="<?php echo $row['Firma']; ?>" /><br>
        Email <input type="text" name="Email" value="<?php echo $row['Email']; ?>" /><br>
        Telefon<input type="text" name="Telefon" value="<?php echo $row['Telefon']; ?>" /><br>
        Telefon2 <input type="text" name="Telefon2" value="<?php echo $row['Telefon2']; ?>" /><br>
        Laufzeit <input type="text" name="Laufzeit" value="<?php echo $row['Laufzeit']; ?>" /><br>
        PCLizenzen <input type="text" name="PCLizenzen" value="<?php echo $row['PCLizenzen']; ?>" /><br>
        Seriennummer<input type="text" name="Seriennummer" value="<?php echo $row['Seriennummer']; ?>" /><br>
        DatumAktiv <input type="text" name="DatumAktiv" value="<?php echo $row['DatumAktiv']; ?>" /><br>
        DatumEndAktiv <input type="text" name="DatumEndAktiv" value="<?php echo $row['DatumEndAktiv']; ?>" /><br>
Ich hoff ihr könnt mir irgendwie helfen oder nochmals ne Doku mir geben :)
 
Zurück