2010-08-02 2 views
0

J'ai écrit une fonction d'enregistreur et insère «insérer et mettre à jour des requêtes» à la base de données. bien que j'applique "mysql_real_escape_string" à la stl sql, je ne peux pas l'insérer dans la base de données. une suggestion s'il vous plaît?insérer l'instruction sql dans la base de données mysql comme une chaîne commune?

+1

Quelle est l'erreur exacte que vous obtenez et le code que vous utilisez? –

+0

Afficher le code .. – Mchl

+0

Si vous vous attendez à ce que les gens investissent leur temps pour répondre à votre question, VOUS devriez consacrer du temps à poser la question. Quelle est l'erreur pour les débutants? –

Répondre

0
INSERT INTO kayit (ip, user_id, query) VALUES ('127.0.0.1', 1 UPDATE faal_ekonkod SET bedel = 12000 WHERE id = 1) 

Dans SQL, les chaînes doivent être entre guillemets. Il vous manque également une virgule. Essayez ceci:

INSERT INTO kayit (ip, user_id, query) VALUES ('127.0.0.1', 1, 'UPDATE faal_ekonkod SET bedel = 12000 WHERE id = 1') 
0

J'ai aussi des problèmes avec cette fonction, alors j'utilise la fonction addslashes(), ce n'est pas une réponse mais une solution.

$query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'", 
      mysql_real_escape_string($user), 
      mysql_real_escape_string($password)); 
+0

Je ne peux pas vraiment obtenir ce que votre réponse est à propos. Vous mentionnez des problèmes avec 'mysql_real_escape_string()' vous n'en donnez aucune idée, vous mentionnez 'addslashes()' comme fonction d'échappement pour MySQL, ce qui n'est pas le cas, et vous publiez finalement ce qui semble être du code PHP parfaitement valide. Suggérez-vous de l'utiliser ou de l'éviter? –

Questions connexes