Mailinglisten-Archive |
Hallo, ich bin neu auf der Liste und auch noch recht unerfahren mit PHP. Ich wollte mir jetzt ein PHP-Skript schreiben, mit dem ich eine komplette mySQL-Tabelle ausgeben und die verschiedenen Einträge verändern kann. Die Namen der Input-Felder werden dabei als "Name1", "Name2" etc. übergeben. So wie sie ist, funktioniert das Skript für Tabellen mit genau zwei Zeilen. Was ich leider nicht hinbekommen habe -- obwohl ich es auf die verschiedensten Weisen versucht habe -- ist, die Übergabe der Variablen an das Dokument rekursiv für beliebige Zeilen zu definieren. So ist das Skript natürlich nutzlos. Irgendwelche Ideen oder Verweise? Dank und Gruß, Ingo %%%%%%%%%% begin %%%%%%%%%%%%%%%%%%%%%%%%% <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>versuch</title> <meta name="generator" content="BBEdit 8.2" /> </head> <body> <?php // +++++ Funktionsdefinition ++++++ // function ausgabe() { // Verbindung zu mySQL $db=mysql_connect("localhost","root","******"); // Verbindung zur Datenbank mysql_select_db("semws05"); // Auslesen der Daten aus der Tabelle $anfrage="SELECT * FROM ps1daten"; $ergebnis=mysql_query($anfrage); // Anzahl der Zeilen und Spalten ermitteln $zeilenanzahl=mysql_num_rows($ergebnis); $spaltenanzahl=mysql_num_fields($ergebnis); // Ausgabe der Datensätze in einer Tabelle print("<form action='$PHP_SELF' method=\"GET\" name='daten'>"); print("<table border='1'>"); // Tabellenkopf ausgeben print("<tr align='center'>"); for ($zahl=0;$zahl<$spaltenanzahl;$zahl++) { print("<td><b>"); print(mysql_field_name($ergebnis,$zahl)); print("</b></td>"); } print("</tr>"); // Ausgabe der einzelnen Zeilen $i=0; while($zeile=mysql_fetch_array($ergebnis)){ print("<tr align='center'>"); print("<td>"); $id="id"; $id.=$i; print("<input type='text' size='2' name='$id' value='$zeile[id]'>"); print("</td>"); print("<td>"); $name="Name"; $name.=$i; print("<input type='text' size='17' name='$name' value='$zeile[Name]'>"); print("</td>"); print("<td>"); $vorname="Vorname"; $vorname.= $i; print("<input type='text' size='17' name='$vorname' value='$zeile[Vorname]'>"); print("</td>"); print("<td>"); $anrede="Anrede"; $anrede.=$i; print("<input type='text' size='7' name='$anrede' value='$zeile[Anrede]'>"); print("</td>"); print("<td>"); $strasse="Strasse"; $strasse.= $i; print("<input type='text' size='17' name='$strasse' value='$zeile[Strasse]'>"); print("</td>"); print("<td>"); $plz="PLZ"; $plz.=$i; print("<input type='text' size='5' name='$plz' value='$zeile[PLZ]'>"); print("</td>"); print("<td>"); $ort="Ort"; $ort.=$i; print("<input type='text' size='17' name='$ort' value='$zeile[Ort]'>"); print("</td>"); print("<td>"); $email="Email"; $email.=$i; print("<input type='text' size='30' name='$email' value='$zeile[Email]'>"); print("</td>"); print("<td>"); $telefon="Telefon"; $telefon.= $i; print("<input type='text' size='14' name='$telefon' value='$zeile[Telefon]'>"); print("</td>"); print("</tr>"); $i++; } print("</table>"); print("<input type='submit' name='submit' value='aendern'>"); print("</form>"); mysql_close($db); } // +++++ bedingte Ausgabe der Seite ++++++ // //Übernahme der Variablen aus dem generierte HTML-Dokument $submit = $_GET['submit']; $id0 = $_GET['id0']; $vorname0 = $_GET['Vorname0']; $name0 = $_GET['Name0']; $anrede0 = $_GET['Anrede0']; $email0 = $_GET['Email0']; $telefon0 = $_GET['Telefon0']; $strasse0 = $_GET['Strasse0']; $plz0 = $_GET['PLZ0']; $ort0 = $_GET['Ort0']; $id1 = $_GET['id1']; $vorname1 = $_GET['Vorname1']; $name1 = $_GET['Name1']; $anrede1 = $_GET['Anrede1']; $email1 = $_GET['Email1']; $telefon1 = $_GET['Telefon1']; $strasse1 = $_GET['Strasse1']; $plz1 = $_GET['PLZ1']; $ort1 = $_GET['Ort1']; // Eigentliche Ausgabe if ($submit=="aendern") { $db=mysql_connect("localhost","root","*****"); mysql_select_db("semws05"); $sql = "UPDATE ps1daten SET id='$id0', Vorname='$vorname0', Name='$name0', Anrede='$anrede0', Email='$email0', Telefon='$telefon0', Strasse='$strasse0', PLZ='$plz0', Ort='$ort0' WHERE id LIKE '1' "; $result = mysql_query($sql,$db); $sql = "UPDATE ps1daten SET id='$id1', Vorname='$vorname1', Name='$name1', Anrede='$anrede1', Email='$email1', Telefon='$telefon1', Strasse='$strasse1', PLZ='$plz1', Ort='$ort1' WHERE id LIKE '2' "; $result = mysql_query($sql,$db); mysql_close($db); print("Datenbestand wurde abgeändert<br>"); ausgabe(); } else { ausgabe(); } ?> </body> </html> %%%%%%%%%% end %%%%%%%%%%%%%%%%%%%%%%%%%
php::bar PHP Wiki - Listenarchive