Formular mit Werten aus Datenbank füllen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
auswahl
code
datei
datenbank
datum
ergebnis
feld
formular
lauten danke
leer stehen
nachname
nummer
schritt
spalte
spalten
standard
status
tabelle
verbindung
-
Hallo Community,
Ich komme bei Schritt Nummer 4 & 5 leider nicht weiter, und würde mich über eure Unterstützung freuen!
1. - meine datenbank hat eine tabelle mit 30 spalten.
2. - die erste Spalte lautet ID und hat immer einen anderen Wert.
3. - die anderen Spalten speichern Angaben die über ein PHP Formular (form.php) versendet werden.
4. - Jetzt möchte ich gerne auf einer weiteren PHP Seite (z.B. auswahl.php) eine Tabelle haben
in der man NUR die Werte der erste Spalte (ID) als Link wiedergibt.
Wie lautet hier die richtige abfrage (select) und wiedergabe (echo)?
5. - Dieser Link sollte mich dann zum Formular weiterleiten (edit.php)
Jedoch sollten die Felder nicht leer stehen sondern die 30 Werte von der ID in die Felder füllen.
was genau sollte bei den Feldern in value="" stehen?
6. - Kann man Schritt nummer 4 weglassen und z.B. über Suche_nach_ID.php mit $_POST
die ID übergeben und somit die weiteren Felder im Formular mit Daten füllen?
Wie würde hier der Code für Abfrage lauten.
Danke Lg. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Mein Standard-Code für deinen Schritt 4 (auch schnell auf weitere Felder aus der Datenbank erweiterbar):
<table> <?php include('HIER-KOMMT-DEINE-VERBINDUNG-ZUR-DATENBANK-DATEI-REIN.php'); $query = "SELECT * FROM dein_datenbank_name_hier"; $result = mysql_query($query); $num=mysql_numrows($result); $i=0; while ($i < $num) { $id = mysql_result($result,$i,"id"); echo "<tr> <td><a href='$id'>$id</a></td> </tr>"; $i++; } //rasenkr.lima-city.de ?> </table>
Ich denke, so meintest du das.
Du musst natürlich "HIER-KOMMT-DEINE-VERBINDUNG-ZUR-DATENBANK-DATEI-REIN.php" und "dein_datenbank_name_hier" auf deine Datenbank anpassen, sonst funktioniert es nicht.
Was du in deinem Schritt 5 und 6 vor hast, verstehe ich nicht, daher kann ich dir da noch keinen Code für anbieten.
Hoffe ich konnte dir helfen -
Für deine 4 gibt es zwei Möglichkeiten bei der Ausgabe.
1mal als Link oder als Dropdown.
Dann hängt der Code noch von der Datenbankverbindung ab. Also ob du noch MySQL verwendest oder schon mysqli oder sogar PDO. Die letzteren beiden solltest du wegen der Zukunfstfähigkeit nutzen.
Also die auswahl.php als einfachste Lösung
$result=$mysqli->query("SELECT * FROM db_tabelle "); while($data=$result->fetch_array()) { echo "<a href='edit.php?id=".$data['ID']."'>".$data['ID']."</a><br>"; }
Die edit.php
if(is_numeric($_GET['id'])){ $result=$mysqli->query("SELECT * FROM db_tabelle WHERE ID='".$_GET['id'] ); $data==$result->fetch_array(); }else echo "Fehler! Es wurde keine ID ausgewählt";
In das value Attribut kommt nun immer $data['db_feld']
Edit: Du musst natürlich noch eine MySQLi Datenbankverbindung im Opjektorientierten Stil aufbauen.
Beitrag zuletzt geändert: 30.5.2015 13:07:25 von all-in1 -
Hallo,
ich habe es jetzt so gemacht, höchstwahrscheinlich sehr umständlich
also eine tabele bestehend aus letzen 25 Zeilen mit Werten von $ID und einem Button zum edieren der einträge in while schleife. Fall es jemand in der art und weise vllt auch sucht.
<? include 'config.php'; $abfrage = "SELECT * FROM tabelle ORDER BY id DESC LIMIT 25"; $ergebnis = mysql_query($abfrage); ?> <table border="0" width="700px"> <tr> <td><b>ID</b></td> <td><b>Datum</b></td> <td><b>Hersteller</b></td> <td><b>Nachname</b></td> <td><b>Telefon 1 + 2</b></td> <td><b>Status</b></td> <td><b>Aktion</b></td> </tr><br><br> <? while($row = mysql_fetch_object($ergebnis)) { ?> <tr> <td><b><? echo $row->id;?></b></td> <td><? echo $row->regdata;?></td> <td><? echo $row->herstellermodel;?></td> <td><? echo $row->nachname;?></td> <td><? echo $row->telefon1;?><br><? echo $row->telefon2;?></td> <td><? echo $row->status;?></td> <td><form method="post" action="seitezumeditieren.php"> <input type="hidden" name="id" value="<? echo $row->id;?>" size="40"/><br> <input type="submit" value="Update"></form> </td> </tr> <? } ?> </table> </form>
Beitrag zuletzt geändert: 2.6.2015 19:43:11 von xstyleskaterx -
Das
´<td><form method="post" action="seitezumeditieren.php"> <input type="hidden" name="id" value="<? echo $row->id;?>" size="40"/><br> <input type="submit" value="Update"></form> </td>
Kannst du auch so lösen:
<td><a href="seitezumeditieren.php?<?php echo $row->id;?> ">Update</a> </td>
Spart zum einen tipperei, Speicherplatz, Rechenzeit und Ladezeit im Browser. Auch wenn alles nur ein wenig ist, es summiert sich im ganzen. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage