25. april 2003 - 09:52
Der er
12 kommentarer og 2 løsninger
variabel i variabel
Er det muligt at bruge en variabel i en funktios anden variabel? Har funktionen: fetch_sql(char buffer[300]); nu vil jeg så bruger den i min main funktion, således: int main(void) { char nick[32]; nick = "nomak"; fetch_sql("SELECT * FROM users WHERE nick='VARIABLEN NICK'"); return 1; } kan dette lade sig gøre?
Annonceindlæg fra Capgemini
25. april 2003 - 09:59
#1
int main(void) { char nick[32]; nick = "nomak"; fetch_sql("SELECT * FROM users WHERE nick='" + nick + "'"); return 1; } //>Rune
25. april 2003 - 10:02
#2
char cmd[80]; char nick[32]; strcpy(nick,"nomak"); sprintf(cmd,"SELECT * FROM users WHERE nick='%s'",nick); fetch_sql(cmd);
25. april 2003 - 10:04
#3
arne_v> Hvad er det %s gør? //>Rune
25. april 2003 - 10:08
#4
%s er formaterings-direktivet for C string (nul termineret char array)
25. april 2003 - 10:12
#5
sprintf(cmd, "SELECT * FROM sessions WHERE key='%s';", key); burde den forespørgsel ikke virke?
25. april 2003 - 10:13
#6
Jo.
25. april 2003 - 10:14
#7
You have an error in your SQL syntax near 'key='1e61f44008fa3ce91371fe666380e8a8'' at line 1
25. april 2003 - 10:15
#9
Key er vist et reserveret ord
25. april 2003 - 10:16
#10
oooh! i c.. 2 sekunder
25. april 2003 - 10:19
#11
Hvis key er et reserveret ord i MySQL, så er der nok forklaringen. (jeg synes dog bare at du skulle have haft fejl, da du oprettede tabellen så - ikke når du forespørger)
25. april 2003 - 10:23
#12
Nej, det behøv's han ikke at få at vide. Man kan bare skrive `key` som de fleste værktøjer gør for brugeren :)
25. april 2003 - 10:32
#13
Hvis det er tilfældet så er løsningen jo: sprintf(cmd, "SELECT * FROM sessions WHERE `key`='%s'", key); (og så synes jeg iøvrigt absolut ikke at man skal omgåes reserverede or dpå den måde)
25. april 2003 - 10:40
#14
takker til alle jer.. er kommet videre :)
Kurser inden for grundlæggende programmering