webForumDet fria alternativet

Problem med mellanslag i tabellnamn.

PHP

3 svar · 277 visningar · startad av Rödalacket

Medlem sedan feb. 20002 612 inlägg
Frågan#1

Har en admin-sida där den som administrerar lägger till nya tabeller i db:en efter behov.
Namnet plus annat skrivs in i textfält och skickas till databasen.

Nu uppstår det ett litet problem om det är ett mellanslag i namnet på tabellen när man skall redigera den.

Namnet på tabellen man vill redigera skickas med i adressen t.ex
bla.php?name=Niclas%20Bananer och det är då meningen att man skall komma till en sida där redigering kan ske men får felmeddelande "Table 'dbase.Niclas' doesn't exist".

Har prövat att använda rawurldecode(), urldecode() men inget funkar.

Det skulle vara underbart om det går att lösa på nått sätt men det kanske inte går... :(

Medlem sedan apr. 2002830 inlägg
#2

Skulle det inte vara smartare att se till så att det inte går att skapa tabellnamn med mellanslag... ?

Medlem sedan sep. 20025 506 inlägg
#3

Citationstecken/apostrofer runt tabellnamnet kanske?

Medlem sedan feb. 20002 612 inlägg
#4
mysql_query("SELECT * FROM quizDate WHERE id='$tempName'");

Verkar funka med mellanslag men inte

$result = mysql_query("SELECT answer FROM $tempAnswer") or die(mysql_error());

Lägger jag till " eller ' i början och i slutet på variabeln $tempAnswer
så får jag felmeddelandet
You have an error in your SQL syntax near "Niclas Bananer" <--riktigt namn åtminstone

Har jag inga " eller ' så får jag felmeddelandet
Table 'lns_9.Niclas' doesn't exist

321 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
184 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
185 ms — ändringar (db)