• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

MYSQL Datenausgabe php

hendrikator

Neues Mitglied
Hallo,

ich habe ein Programm mit Virtual Basic programmiert. Nachdem sich ein User eingeloggt hat, wird der aktuelle Punktestand des Users abgerufen und angezeigt. Ich habe aber versehentlich den "guten" PHP-Code gelöscht und habe nun nur noch diese hier, der aber nicht richtig funktioniert:

PHP:
 <?php
//Daten müssen angepasst werden 
$verbindungsdaten = mysql_connect("localhost","schule","*******") 
 or die("Verbindung zum Server konnte nicht hergestellt werden"); 
 $username = mysql_real_escape_string($_GET['username'], $verbindungsdaten);
 mysql_select_db("schule") //Datenbank anpassen
 or die("Datenbank ist nicht Vorhanden");
//Tabelle und Spalte anpassen
 $auslesen = "SELECT `Punkte` FROM `Benutzername` WHERE '$username' LIKE '$username'";
 $ausgeben = mysql_query($auslesen);
 $row = mysql_fetch_array($ausgeben);
    //Spalte (Punkte) anpassen
 echo $row['Punkte'];
?>
da kommt immer Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Inetpub\vhosts\thegamefront.de\httpdocs\schule\lesen.php on line 11
Was ist der Fehler darin?

Danke!
 
Zuletzt bearbeitet:
mach mal
PHP:
echo mysql_error($verbindungsdaten);

in der Zeile nach :
PHP:
 $ausgeben = mysql_query($auslesen);

Und sag uns was da steht.
 
Table 'schule.benutzername' doesn't exist
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Inetpub\vhosts\thegamefront.de\httpdocs\schule\lesen.php on line 12
aber die existirt doch??
 
hallo mein freund hat mir jetz geholfen ein bisschen kommt aber nun auch nicht mehr weiter inzwischen zeigt es zwar die punkte an aber nur von einer person
http://thegamefront.de/schule/s/lesen.php?username=a <------und zwar von der
http://thegamefront.de/schule/s/lesen.php?username=t <----- will aber auch von t de punkte wissen
PHP:
<?php
//Daten müssen angepasst werden 
$verbindungsdaten = mysql_connect("localhost","schule","************") 
 or die("Verbindung zum Server konnte nicht hergestellt werden"); 
 $username = mysql_real_escape_string($_GET['username'], $verbindungsdaten);
 mysql_select_db("schule") //Datenbank anpassen
 or die("Datenbank ist nicht Vorhanden");
//Tabelle und Spalte anpassen
 $auslesen = "SELECT `punkte` FROM `schule` WHERE '$username' LIKE '$username'";
 $ausgeben = mysql_query($auslesen);
 if (!$ausgeben) {
    die('Invalid query: ' . mysql_error());
 }
 $row = mysql_fetch_array($ausgeben);
    //Spalte (Punkte) anpassen
 echo $row['punkte'];
?>
 
Warum denn LIKE und nicht =? LIKE unterstützt Wildcards, was meistens nachteilig ist.

- MySQL :: MySQL 5.6 Reference Manual :: 11.5.1 String Comparison Functions

PHP:
 $auslesen = "SELECT `punkte` FROM `schule` WHERE '$username' LIKE '$username'";

Wenn $username = 't' ist, steht dort:

PHP:
 $auslesen = "SELECT `punkte` FROM `schule` WHERE 't' LIKE 't'";

Das ist mehr oder weniger äquivalent zu:

PHP:
 $auslesen = "SELECT `punkte` FROM `schule`;

Du willst vermutlich in etwa so was:

PHP:
 $auslesen = "SELECT `punkte` FROM `schule` WHERE `name_der_username_spalte` = '$username'";
 
hinbekommen

ich hab n bisle mit dem php ding rumgespielt und jetz leufz
PHP:
<?php
//Daten müssen angepasst werden 
$verbindungsdaten = mysql_connect("localhost","schule","*******") 
 or die("Verbindung zum Server konnte nicht hergestellt werden"); 
 $username = mysql_real_escape_string($_GET['username'], $verbindungsdaten);
 mysql_select_db("schule") //Datenbank anpassen
 or die("Datenbank ist nicht Vorhanden");
//Tabelle und Spalte anpassen
 $auslesen = "SELECT `Punkte` FROM `schule` WHERE `Benutzername` = '$username'";
 $ausgeben = mysql_query($auslesen);
 if (!$ausgeben) {
    die('Invalid query: ' . mysql_error());
 }
 $row = mysql_fetch_array($ausgeben);
    //Spalte (Punkte) anpassen
 echo $row['Punkte'];
?>
 
Zurück
Oben