Sample Header Ad - 728x90

How does mysql_real_escape_string() work?

1 vote
0 answers
64 views
I have to send some string (in C) as a query to MySQL, so i used mysql_real_escape_string() to escape some characters like \0 or \n: #include int loginQuery(char *Nickname, char *Password) { char bufferutility[READBUFSIZE]="SELECT * FROM user WHERE Nickname='"; char bufferutility2[READBUFSIZE*2+1]; strcat(bufferutility,Nickname); strcat(bufferutility,"' AND Password='"); strcat(bufferutility,Password); strcat(bufferutility,"';"); if(mysql_real_escape_string(conn,bufferutility2,bufferutility,strlen(bufferutility))==(unsigned long)-1){ printf("\nEscaping error\n"); } //code for mysql_real_query() here } But I got this error: > You have an error in your SQL syntax; check the manual that > corresponds to your MariaDB server version for the right syntax to use > near '\'Hello\n\' AND Password=\'World\n\'' at line 1 What have I done wrong?
Asked by SempriGno (11 rep)
Dec 19, 2022, 09:26 PM