MySQL-Tabelle auslesen mit $ID will nicht funktionieren...

philippgerard

Grünschnabel
Servus,

ich bin grade dabei eine Zitatedatenbank mit PHP und MySQL zu programmieren, stoße momentan aber bei der Edit-Funktion auf Probleme. Ich habe in der edit1.php alle IDs mit Titel ausgeben lassen. In der edit2.php sollte nun

Code:
$id

folgendermaßen interpretiert und verarbeitet werden:

PHP:
<?php

// Datenbankveriablen

$host = "localhost";
$user = "user";
$pass = "passwort";
$db = "datenbank";
$table = "zitate";

// Verbinden...

$mysql_connect = mysql_connect ($host, $user, $pass);

// Auslesen...

$abfrage = "SELECT ID, zitat from $table where ID='$ID' ";
$daten = mysql_query($abfrage, $mysql_connect);

// Werte in ein Array verwandeln...

$summe = mysql_fetch_assoc($daten);

// Formular erstellen...

print ("<table width=100% height=100% cellpadding=0 cellspacing=0><tr><td align=center valign=middle>\n");
print ("<table width=500 cellpadding=5 cellspacing=1 bgcolor=#000000><tr bgcolor=#cccccc><td>\n");
print ("<font size=1 face=Tahoma color=#000000>Bitte bearbeiten:</font></td></tr>\n");
print ("<tr><td bgcolor=#ffffff><form name=edit method=post action=edit3.php>\n");
print ("<textarea name=zitat_neu wrap=VIRTUAL cols=30>\n");
print ("$summe[zitat]\n");
print ("</textarea></td></tr>\n");
print ("<tr bgcolor=#ffffff><td>");
print ("<input type=submit name=Editieren value=Abschicken>\n");
print ("</form></td></tr></table>");
print ("</td></tr></table>");

// Verbindung trennen...

mysql_close ($mysql_connect);

?>

Leider funktioniert dies nicht. Ich finde keinen Fehler :(
Wißt Ihr weiter?
 
Zuletzt bearbeitet:
ausserdem..

... kann mir das grad ned genau anschaun,aba...
musste die mysql befehle ned groß schreibön ? *g*

also
$abfrage = "SELECT ID, zitat from $table where ID='$ID' ";

zu
PHP:
$abfrage = "SELECT ID, zitat FROM $table WHERE ID='$ID' ";

kA ob das sein muss.. habs mir so angewöhnt *gg*

naja, schau's mir später genauer an falls noch nötig :)

bis denn ;)
sepp
 
Zuletzt bearbeitet:
Ich hab das ganze jetzt nochmal überarbeitet. Nun habe ich zwar keine MySQL-Errors mehr, dafür aber auch nur ein leeres Textfeld :lol:

edit2.php (Auszug)
PHP:
// Verbinden...

$mysql_connect = mysql_connect ($host, $user, $pass);

// Auslesen...

$abfrage = "SELECT ID, zitat FROM $table WHERE ID='$ID' ";
$daten = mysql_query($abfrage, $mysql_connect);

// Werte in ein Array verwandeln...

$daten = mysql_db_query ($db, $abfrage, $mysql_connect);

// Formular erstellen...

print ("<table width=100% height=100% cellpadding=0 cellspacing=0><tr><td align=center valign=middle>\n");
print ("<table width=500 cellpadding=5 cellspacing=1 bgcolor=#000000><tr bgcolor=#cccccc><td>\n");
print ("<font size=1 face=Tahoma color=#000000>Bitte bearbeiten:</font></td></tr>\n");
print ("<tr><td bgcolor=#ffffff><form name=edit method=post action=edit3.php>\n");
print ("<textarea name=zitat_neu wrap=VIRTUAL cols=30>\n");
print ("$summe[zitat]\n");
print ("</textarea></td></tr>\n");
print ("<tr bgcolor=#ffffff><td>");
print ("<input type=submit name=Editieren value=Abschicken>\n");
print ("</form></td></tr></table>");
print ("</td></tr></table>");

// Verbindung trennen...

mysql_close ($mysql_connect);

Wer sehen will wie _toll_ es funktioniert: http://www.webdesign-netzwerk.de/zeitdenken/zitate/edit.php
 
Da ich den aktuellen Stand des Codes nicht kenne, kann ich nur mutmaßen.
Du weißt schon, dass die Abfrage
$daten = mysql_db_query ($db, $abfrage, $mysql_connect);
keine Daten zurückliefert?
Sie liefert wie mysql_query nur ein result zurück
$summe = mysql_fetch_row($daten);
oder vergleichbares fehlt noch.

mfg,
ZZZottel
 
Php ist case-sensitive, d.h. wenn du in deinem query eine Variable $ID hast _musst_ du die dem Script auch so geben.

$id und $ID sind 2 verschiedene Variablen!!!

ansonsten machst du inzwischen die abfrage 2 mal (totaler unsinn ;)):
PHP:
$daten = mysql_query($abfrage, $mysql_connect);
$daten = mysql_db_query ($db, $abfrage, $mysql_connect);
das zweite sollte wohl eher mysql_fetch_array heissen... und dann printe danach auch das richtige raus: $daten['zitat'] und nicht $summe['zitat']
 
Zurück