sapzero
Goto Top

SQL befehl funktioniert nicht

Hi,
ich habe ein Formular und eine Funktion in PHP erstellt, die bei Abfrage einer Tablle mit einem SQL Befehls eine Tabelle im Browser erstellt.
Die Tabelle hat die Spalten UserID, Vname, Nname, Passwort, Username.
Es funktioniert aber noch nicht ganz richtig undzwar liegt das Problem an der Abfrage.
Wenn ich jetzt nach dem Usernamen frage mache ich das so "Select Username from tbluser ". Dann zeigt er mir die Tabelle ohne Probleme an und auch richtig.
Wenn ich jedoch bei der Abfrage Username klein schreibe "Select username from tbluser " zeigt er nichts an.
Ich muss immer die Spaltennamen richtig schreiben und auch immer nur beim Select.
Was muss ich machen, dass die groß und klein schreibung in der Abfrage nach dem select egal ist.

function sql2tbl ()
{
	if($verbunden = 1)
	{
  		$befehl = $_POST['textfeld'];  
		$ok = mysql_query($befehl) OR die ("Fehler bei der SQL Abfrage:<br/ >");  
		
		while($ausgabe = mysql_fetch_object($ok))
		{
			$ausgabe->UserID;
			$ausgabe->Vname;
			$ausgabe->Nname;
			$ausgabe->Passwort;
			$ausgabe->Username;
			
			echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"1\">";  
			echo "<tr>";  
			if($ausgabe->UserID){echo "<td width=\"110\" bgcolor=\"#E2E2E2\">UserID: </td>";}  
			if($ausgabe->Vname){echo "<td width=\"110\" bgcolor=\"#E2E2E2\">Vorname: </td>";}  
			if($ausgabe->Nname){echo "<td width=\"110\" bgcolor=\"#E2E2E2\">Nachname: </td>";}  
			if($ausgabe->Passwort){echo "<td width=\"110\" bgcolor=\"#E2E2E2\">Passwort: </td>";}  
			if($ausgabe->Username){echo "<td width=\"110\" bgcolor=\"#E2E2E2\">Username: </td>";}  
			echo "</tr>";  
			echo "<tr>";  
			if($ausgabe->UserID){echo "<td bgcolor=\"#F3F3F3\">$ausgabe->UserID</td>";}  
			if($ausgabe->Vname){echo "<td bgcolor=\"#F3F3F3\">$ausgabe->Vname</td>";}  
			if($ausgabe->Nname){echo "<td bgcolor=\"#F3F3F3\">$ausgabe->Nname</td>";}  
			if($ausgabe->Passwort){echo "<td bgcolor=\"#F3F3F3\">$ausgabe->Passwort</td>";}  
			if($ausgabe->Username){echo "<td bgcolor=\"#F3F3F3\">$ausgabe->Username</td>";}  
			echo "</tr>";  
		}
	}
}

MfG
Sapzero

Content-ID: 109602

Url: https://administrator.de/forum/sql-befehl-funktioniert-nicht-109602.html

Ausgedruckt am: 23.12.2024 um 04:12 Uhr

krizor
krizor 27.02.2009 um 11:45:41 Uhr
Goto Top
Hallo,

der Zeichensatz der Tabelle oder Datenbank steht wahrscheinlich auf *_cs (case-sensitive). Diese kann auf *_ci (case-insensitive) gestellt werden, zum Beispiel "latin1_swedish_ci".
Danach müsste die Groß- und Kleinschreibung kein Problem mehr sein.

Gruß

krizor
Sapzero
Sapzero 27.02.2009 um 16:40:33 Uhr
Goto Top
Hi,

danke für deine Antwort. Habe es überprüft und die Datenbank ist schon auf "latin1_swedish_ci" eingestellt.
Also muss der Grund wo anders liegen.

Gruß
Sapzero
krizor
krizor 02.03.2009 um 11:35:10 Uhr
Goto Top
Hi,

ich denke ich habe den Fehler nun gefunden. Habe es bei mir mal nachgestellt.

Bei deinem Echo muss der Name der Spalte genau der des angegebenen Spaltennamens in der SQL Abfrage entsprechen.

"SELECT bar...." = echo $foo["bar"]
"SELECT Bar ...." = echo $foo["Bar"]

Hoffe dir geholfen zu haben.

Gruß
krizor
Sapzero
Sapzero 23.04.2009 um 16:47:52 Uhr
Goto Top
Ich habs mal versucht mit mysql_fetch_assoc zu machen. Hier tritt aber wieder das gleiche Problem auf.
Kann mir mal jemand sagen wo der Fehler ist.