Mysql Tabelle ausgeben

loat81

Grünschnabel
Hi Leutz!

Ich hab seit geraumer Zeit ein kleines, wenn doch ärgerliches Problem. Ich habe mir ein script geschrieben, mit dem ich Daten in eine mysql Datenbank schreiben kann (mit php- damit auch mal jemand anderes die Seite pflegen kann)
script:
PHP:
  <?php
     
     if ($_POST['t']!=""){
     
     $conn=mysql_connect('localhost','xxxxx','yyyyy');
     $query="INSERT INTO tourdaten.bands (bandname) values ('".$_POST['t']."')";
     
     mysql_query($query,$conn);
     }
     ?>

Das auch alles wunderbar. So jetzt zu meinem Problem:
Ich möchte, dass der Inhalt der Db-Tabelle auch gleich auf der selben Seite wieder ausgegeben wird, damit der Schreiber gleich überprüfen kann, welche Sachen schon drinstehen und welche nicht.
Jemand hat mir schon irgendwas von arrays und while Schleife erzählt, aber so richtig weiss ich noch nicht bescheid.
Wäre super, wenn von Euch vielleicht jemand helfen könnte.

mfg
 
Normalerweise löst man das, indem man das Formular, in welches die Daten eingegeben werden auf dieselbe Seite zeigen lässt, in dem sie ausgegeben werden.
Dann gibt man dem submit-Button einen aussagekräftigen Namen, z.B. "tourdateneintragen".
In dem Skript schreibt man dann, an der Stelle, wo ggf. eine Eintragen-Meldung erfolgen kann, ungefähr sowas:
PHP:
............
html und Anfang der seite
............
<?php
if (isset($_POST['tourdateneintragen'])) {
    //Hier Dein Code zum Eintragen und ggf. Erfolgsmeldung
}
?>
............
html und Rest der seite
............
Wenn mir dazu jemand was von 'ner while-Schleife erzählt wär ich auch verwirrt :p
Gruß hpvw
 
Hi.

Entweder hab ich dich falsch verstanden oder ich hab mich einfach doof ausgedrückt
(sry).
Im Prinzip will ich eigentlich nur den kompletten Inhalt einer Mysql-Tabelle in der html seite ausgeben. Da mehrere Leute die db aktualisieren, wär das schon gut, weil jeder sofort sehen könnte welche einträge schon drin sind und welche noch fehlen

mfg
 
Ich bin davon ausgegangen, dass Du eine Seite zum anzeigen der Daten hast?
Zum Beispiel daten.php:
PHP:
<html>
...
<body>
<?php
//DB Connecten
$query="SELECT * FROM tabelle";
$result=mysql_query($query);
while ($row=mysql_fetch_array($result)) {
  //jede Zeile des Ergebnis ausgeben
}
?>
<a href="neuerEintrag.php">Einen neuen Eintrag machen</a>
</body>
</html>
und eine Seite mit einem Formular, zum neu eintragen (neuerEintrag.php):
HTML:
<html>
...
<body>
<form action="?" method="post">
<input type="text" name="spalte1">
...
<input type="submit" name="tourdateneintragen" value="Speichern">
</form>
</body>
</html>
Den Inhalt dieser Datei, also das Formular, kannst Du natürlich auch direkt am Ende von daten.php ausgeben.

Nun meinte ich folgendes:
Als action bei dem Formular gibst Du daten.php an.
Und daten.php änderst Du wie folgt:
PHP:
<html>
...
<body>
<?php
//DB Connecten
if (isset($_POST['tourdateneintragen'])) {
    //Hier Dein Code zum Eintragen und ggf. Erfolgsmeldung
} 
$query="SELECT * FROM tabelle";
$result=mysql_query($query);
while ($row=mysql_fetch_array($result)) {
  //jede Zeile des Ergebnis ausgeben
}
?>
<a href="neuerEintrag.php">Einen neuen Eintrag machen</a>
</body>
</html>

Liegt Dein Problem jetzt grundsätzlich im ausgeben der Daten Deiner Tabelle oder nur im ausgeben der Daten, wenn direkt vorher etwas neues eingetragen wurde? Letzteres habe ich verstanden.

Gruß hpvw
 
Vielen Dank!

Genau diese Seite hatte ich nicht (daten.php).
Jetzt klappt alles prima. Vielen, vielen Dank nochmal für deine schnelle Hilfe!

mfg loat81
 
Zurück