Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Problem mit mysql_fetch_assoc ....

Empfohlene Antworten

Moin Moin Kollegen,

ich sitze hier nun an einer kleinen MySQL-PHP Aufgabe und komme nicht weiter.

Das folgende Script soll mir lediglig die Tabeller der Datenbank wiedergeben. Nur irgendwie sagt mir der Browser bzw. der SQL-Server folgendes:

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in E:\XAMPP\xampp\htdocs\mysql\showtab.php on line 15

Ich kann mit dieser Meldung gerade nichts anfangen und ich habe alles durchgesehen aber keinen Fehler gefunden.

Hier erstmal der ganze Code:


<?
//Einbinden der inc.php-Datei
include "inc.php";

if($_GET['do']==1)
{
mysql_query("UPDATE user SET status=1 WHERE id='".$_GET['id']."'");
}

echo "<b>Angelegte User:</b><br><table><tr><th>ID</th><th>Vorname</th><th>Nachname</th></tr>";

$zeiger=mysql_query("SELECT * FROM `users` WHERE 1");

while($result=mysql_fetch_assoc($zeiger))
{
echo "<tr><td>".$result['id']."</td><td>".$result['vorname']."</td><td>".$result['nachname']."</td></tr>";
}

echo "</table><a href='useradd.php'>Add new user</a>";

mysql_close($connect);
?>
[/PHP]

Für Tips oder Hinweise bin ich sehr dankbar.

Und bitte nicht zu mosern wenn es ein kleiner Fehler war/ist denn ich fange gerade erst an mit MySQL.

Thx im voraus


$zeiger=mysql_query("SELECT * FROM `users` WHERE 1");
[/PHP]

Setz mal ein

[CODE]echo mysql_error()."<br>";[/CODE]

hinter den Aufruf von mysql_query()...

Dann sollte Dein Script zumindest schonmal eine Fehlermeldung ausgeben, mit der wir was anfangen können...

Oder es ist noch trivialer, und liegt daran, dass deine Tabelle 'user' heißt, Du aber 'users' benutzt...

Also hab das jetzt so geänder wie vorgeschlagen, aber es kommt die selbe Meldung wie vorher...


Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in E:\XAMPP\xampp\htdocs\mysql\showtab.php on line 16

 

Er gibt allerdings die echo-Ausgabe auch nicht aus!

Habe noch die echo-Ausgabe unter den mysql_query Ausdruck geschrieben, deshalb die zeile 16....

Also ich habe das echo an eine andere position gepackt und schon wurde es ausgegeben. Es wurde gesagt, das ich keine Datenbank ausgewählt hatte, dies habe ich nun auch noch geändert.

jetzt wird mir aber leider nicht der inhalt der Tabelle ausgegeben...

Hier der aktuelle Code:


<?

//Einbinden der inc.php-Datei
include "inc.php";

mysql_query("USE webuser");

if($_POST['do']==1)
{
mysql_query("UPDATE `users` SET status=1 WHERE id='".$_POST['id']."'");
}

echo "<b>Angelegte User:</b><br><table><tr><th>ID</th><th>Vorname</th><th>Nachname</th></tr>";

$zeiger=mysql_query("SELECT * FROM `users` WHERE 1");
echo mysql_error()."<br>";

while($result=mysql_fetch_assoc($zeiger))
{
echo "<tr><td>".$result['id']."</td><td>".$result['vorname']."</td><td>".$result['nachname']."</td></tr>";
}

echo "</table><a href='useradd.php'>Add new user</a>";

mysql_close($connect);
?>
[/PHP]

thx bis hierher erstmal...

Ich habe jetzt mal rumexperimentiert und bin der meinung, das die while schleife nicht durchlaufen wird, da mir halt nicht die angelegten user angezeigt werden....

Oder gibt es andere meinungen?

thx

Dann hast Du entweder keine Datensätze in Deiner Tabelle, oder einen SQL-Fehler im Query...

Setz das 'echo mysql_error();' doch einfach mal vor das 'mysql_close()', damit eine eventuelle Fehlermeldung auch dargestellt wird...

Hab das echo auch noch vor dem trennen der Verbindung gesetzt und getest.

"Leider" gab es keine Fehlermeldung....

Hier nochmal der geänderte Code:


<?

//Einbinden der inc.php-Datei
include "inc.php";

//Datebank `webuser` benutzen
mysql_query("USE `webuser`");

//Tabelle ùsers` aktualisieren
mysql_query("UPDATE `users`");

//HTML-Ausgabe
echo "<b>Angelegte User:</b><br><table><tr><th>ID</th><th>Vorname</th><th>Nachname</th></tr>";

//Alles aus der Tabelle `users` auswählen und in der Variable $zeiger "speicher"
$zeiger=mysql_query("SELECT * FROM `users`");
//Fehlerausgabe falls Fehler auftreten bzw während der Erstellung half diese Fehlermuldung
echo mysql_error()."<br>";

//
while($data=mysql_fetch_assoc($zeiger))
{
//HTML-Ausgabe
echo "<p><tr><td>".$data['id']."</td><td>".$data['vorname']."</td><td>".$data['nachname']."</td></tr>";
}

//HTML-Ausgabe
echo "<p><br></table><a href='useradd.php'>Add new user</a>";

//Fehlerausgabe falls Fehler auftreten bzw während der Erstellung half diese Fehlermuldung
echo mysql_error()."<br>";

//Verbindung zur Datenbank schließen
mysql_close($connect);
?>
[/PHP]

thx


//Tabelle ùsers` aktualisieren
mysql_query("UPDATE `users`");
[/PHP]

Hat zwar nichts mit Deinem momentanen Problem zu tun, aber würdest Du Dir hier MySQL-Fehler anzeigen lassen, bekämst Du hier bestimmt nen Syntax-Error...

Und zum anderen Problem würde mich mal der HTML-Code aus der Quellcode-Anzeige des Browsers interessieren...

Das problem hat sich erledigt.

Ich hatte auf einer Seite, die vorher geladen wird, ein Feld anders benand als auf dieser Seite. Da kann dann selbst MySQL nicht mehr mithalten...:D :D :D

Ansonsten Danke für deine Hilfe, ich hoffe, ich hab nicht zu sehr genervt!?:hells:

thx

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.