11
votes

Utilisation de variables PHP à l'intérieur de la déclaration d'insertion MySQL

J'utilise la déclaration suivante, mais je ne sais pas comment obtenir le variables $ $ code> à l'intérieur de l'instruction:

mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
             VALUES ('$user_email', '$user_refer', '$user_share', '$_SERVER['REMOTE_ADDR']')");


2 commentaires

Essayez d'utiliser la concision ... mais vous devriez filtrer l'entrée d'abord mysql_real_escape_string ou pdo php.net/manual/fr/book.pdo.php


Dupliqué possible de Comment inclure une variable PHP à l'intérieur Une déclaration d'insertion MySQL


6 Réponses :


6
votes

Lors de l'utilisation d'un type de matrice dans une chaîne (les guillemets doubles "" PHP "" PHP va analyser la chaîne) Vous devez joindre la valeur que vous souhaitez utiliser dans des supports bouclés, c'est-à-dire

mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
         VALUES ('$user_email', '$user_refer', '$user_share', '{$_SERVER['REMOTE_ADDR']}')");


0 commentaires

14
votes

Changer simplement le dernier:

mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
VALUES ('$user_email', '$user_refer', '$user_share', '".$_SERVER['REMOTE_ADDR']."')");


0 commentaires

0
votes

Vous devriez le faire un peu différemment. Utilisez soit


0 commentaires

0
votes

Utilisez-le comme ceci:

mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
             VALUES ('".$user_email."'…


1 commentaires

Ce n'est pas nécessaire à part la dernière variable, bien que



1
votes

Bien que la question littérale ait répondu dans le lien dans les commentaires, le problème réel que vous rencontrez n'a rien à voir avec SQL mais avec la syntaxe de string PHP. Donc, voici un lien pour votre référence: http://php.net/types.string

Cette page fait partie des choses les plus importantes que vous devez connaître sur PHP.
Vous devriez l'étudier avec diligence ou vous ne pourrez pas utiliser PHP pour même les tâches simples comme celle-ci.


1 commentaires

Merci, je sais que c'était trop simple d'une question, j'étais juste dans une pincée rapide. Je vais lire sur ce truc plus.



0
votes

moyen le plus sûr de faire ce que vous voulez est au lieu de cela:

mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
         VALUES ('$user_email', '$user_refer', '$user_share', '$_SERVER['REMOTE_ADDR']')");


0 commentaires