Hallo zusammen,
nach drei Jahren beginne ich erstmals mich wieder mit PHP zu beschäftigen ... bin leider nach wie vor ein Anfänger ... also bitte etwas nachsicht.
Das grundsätzliche Problem:
(1) Ich lerne an einem vormals funktioniertendem Beispiel (hat unter PHP4x funktioniert).
(2) Ich habe die aktuelle XAMPP version unter WINDOWS XP installiert.
(3) Aus einer PHP-Datei (index.php) heraus übergebe ich eine Variable (der Inhalt ist der INDEX einer Datei die in einer MySQL-DB vor sich hin döst) an eine zweite PHP-Datei (datensatz_anzeigen.php).
(3) Mit Hilfe dieser Datei und der übergebenen ID ($id) versuche ich nun, aus der DB einen bestimmten vom user im INDEX.PHP ausgesuchten datensatz nachzuladen und am Bildschirm anzuzeigen.
(4) Leider scheint es so zu sein, dass schon in der datei "datensatz_anzeigen.php" die Variable $id überhaupt keinen Wert beinhaltet.
Hier nun der Inhlat der beiden etwas Code-Bereinigten Dateien INDEX.PHP und DATENSATZ_ANZEIGEN.PHP.
In der INDEX.PHP baue ich eine Tabelle mit ALLEN INHALTEN der Datenbank auf (das funktioniert nach wie vor. Am Ende JEDES EINTRAGES befindet sich eine URL, die dazu dient, die Variable $id zu füllen und an die Datei "datensatz_anzeigen.php" zu übergeben. Dort diesnt also die $id dazu, den vom Benutzer ausgesuchten datensatz in der DB zu identifizieren und in einer neuen tabelle komplett anzuzeigen (der teil ist schon nicht mehr im Code, da die Übergabe der variablen das problem ist ... sie ist einfach leer).
// ============================================================
// INHALT DER DATEI INDEX.PHP (etwas verkürzt)
// Alle Datensätze auslesen und in Tabelle einfüllen
$AUSWAHL_ALLE_DATENSAETZE=MYSQL_QUERY("SELECT * FROM $DB_NAME.$DB_TABLE ORDER by 'id' DESC ");
while($DATENSATZ_ANZEIGEN=MYSQL_FETCH_ROW($AUSWAHL_ALLE_DATENSAETZE))
{
echo "
<tr bgcolor=\"#f1f1f1\">
<td>$DATENSATZ_ANZEIGEN[0]</td>
<td>$DATENSATZ_ANZEIGEN[1]</td>
<td>$DATENSATZ_ANZEIGEN[2]</td>
<td>$DATENSATZ_ANZEIGEN[3]</td>
<td>$DATENSATZ_ANZEIGEN[4]</td>
<td>$DATENSATZ_ANZEIGEN[5]</td>
<td>$DATENSATZ_ANZEIGEN[6]</td>
<td>[ <a href=\"datensatz_anzeigen.php?$id=$DATENSATZ_ANZEIGEN[0]\" <b>»</b></a> ]</td>
</tr>\n";
}
echo "</table>\n";
echo "<p>\n";
// ============================================================
// INHALT DER DATEI datensatz_anzeigen.php (etwas verkürzt)
// $id beinhaltet den INDEX des anzuzeigenden Datensatzes.
$DATENSATZ_AUSWAEHLEN=MYSQL_QUERY(" SELECT * FROM $DB_NAME.$DB_TABLE WHERE id = '$id' ");
==> ICH FRAGE MICH nun, warum ist die variable $id leer ... definitiv hat diese Vorgehensweise unter PHP4.x noch funktioniert. Ich kann mir aber auch vorstellen, dass es vielleicht eine bessere methode als die zuvor beschriebene gibt. Wenn JA, kann mir jemand zeigen wie das geht?
PS: ich habe natürlich vor diesem Posting das Forum durchsucht ... leider aber keine direkte Antwort auf mein Problem gefunden.
Jede Hilfe ist willkommen ....
nach drei Jahren beginne ich erstmals mich wieder mit PHP zu beschäftigen ... bin leider nach wie vor ein Anfänger ... also bitte etwas nachsicht.
Das grundsätzliche Problem:
(1) Ich lerne an einem vormals funktioniertendem Beispiel (hat unter PHP4x funktioniert).
(2) Ich habe die aktuelle XAMPP version unter WINDOWS XP installiert.
(3) Aus einer PHP-Datei (index.php) heraus übergebe ich eine Variable (der Inhalt ist der INDEX einer Datei die in einer MySQL-DB vor sich hin döst) an eine zweite PHP-Datei (datensatz_anzeigen.php).
(3) Mit Hilfe dieser Datei und der übergebenen ID ($id) versuche ich nun, aus der DB einen bestimmten vom user im INDEX.PHP ausgesuchten datensatz nachzuladen und am Bildschirm anzuzeigen.
(4) Leider scheint es so zu sein, dass schon in der datei "datensatz_anzeigen.php" die Variable $id überhaupt keinen Wert beinhaltet.
Hier nun der Inhlat der beiden etwas Code-Bereinigten Dateien INDEX.PHP und DATENSATZ_ANZEIGEN.PHP.
In der INDEX.PHP baue ich eine Tabelle mit ALLEN INHALTEN der Datenbank auf (das funktioniert nach wie vor. Am Ende JEDES EINTRAGES befindet sich eine URL, die dazu dient, die Variable $id zu füllen und an die Datei "datensatz_anzeigen.php" zu übergeben. Dort diesnt also die $id dazu, den vom Benutzer ausgesuchten datensatz in der DB zu identifizieren und in einer neuen tabelle komplett anzuzeigen (der teil ist schon nicht mehr im Code, da die Übergabe der variablen das problem ist ... sie ist einfach leer).
// ============================================================
// INHALT DER DATEI INDEX.PHP (etwas verkürzt)
// Alle Datensätze auslesen und in Tabelle einfüllen
$AUSWAHL_ALLE_DATENSAETZE=MYSQL_QUERY("SELECT * FROM $DB_NAME.$DB_TABLE ORDER by 'id' DESC ");
while($DATENSATZ_ANZEIGEN=MYSQL_FETCH_ROW($AUSWAHL_ALLE_DATENSAETZE))
{
echo "
<tr bgcolor=\"#f1f1f1\">
<td>$DATENSATZ_ANZEIGEN[0]</td>
<td>$DATENSATZ_ANZEIGEN[1]</td>
<td>$DATENSATZ_ANZEIGEN[2]</td>
<td>$DATENSATZ_ANZEIGEN[3]</td>
<td>$DATENSATZ_ANZEIGEN[4]</td>
<td>$DATENSATZ_ANZEIGEN[5]</td>
<td>$DATENSATZ_ANZEIGEN[6]</td>
<td>[ <a href=\"datensatz_anzeigen.php?$id=$DATENSATZ_ANZEIGEN[0]\" <b>»</b></a> ]</td>
</tr>\n";
}
echo "</table>\n";
echo "<p>\n";
// ============================================================
// INHALT DER DATEI datensatz_anzeigen.php (etwas verkürzt)
// $id beinhaltet den INDEX des anzuzeigenden Datensatzes.
$DATENSATZ_AUSWAEHLEN=MYSQL_QUERY(" SELECT * FROM $DB_NAME.$DB_TABLE WHERE id = '$id' ");
==> ICH FRAGE MICH nun, warum ist die variable $id leer ... definitiv hat diese Vorgehensweise unter PHP4.x noch funktioniert. Ich kann mir aber auch vorstellen, dass es vielleicht eine bessere methode als die zuvor beschriebene gibt. Wenn JA, kann mir jemand zeigen wie das geht?
PS: ich habe natürlich vor diesem Posting das Forum durchsucht ... leider aber keine direkte Antwort auf mein Problem gefunden.
Jede Hilfe ist willkommen ....
Kommentar