[Fonctions PHP] mauvais résultat

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonsoir à tous,

voici la fonction suivante:

function port(){
if(!empty($_SERVER['REMOTE_PORT'])) return $_SERVER['REMOTE_PORT'];
else return 'Inconnu';
}

Je veux faire en sorte que le résultat s'inscrive dans une table "essai". J'exécute la requête:

$req="INSERT INTO essai (port) VALUES ('port()')";

Mais il est inscrit "port()" dans ma table au lieu du résultat de la fonction. J'ai essayé sans les apostrophes mais même chose.

Est-ce que quelqu'un peut me venir en aide s'il vous plait ?
merci.
A voir également:

3 réponses

zefoots Messages postés 146 Date d'inscription   Statut Membre Dernière intervention   62
 
$req = "INSERT INTO essai (port) VALUES ('" . port() . "')";
0
Haha
 
Oui, pour ce genre de situation, lorsque tu dois écrire des requêtes en sql avec le langage php, je te conseil de tester d'abord ta requête en y mettant des valeurs bidons directement dans PhpMyAdmin, ou dans un terminal afin de t'assurer de la "justesse" de la syntaxe. Et ensuite une fois que le résultat obtenu est correcte, transcrit la requête dans ton script PHP, en y laissant les guillemets simple, etc..., correctement quoi.

T'es sur de ne pas te planter avec cette méthode!

Bonne suite!


$port=port();
$req="INSERT INTO essai (port) VALUES ('$port')"; // Je trouve ça plus clair


$req='INSERT INTO essai (port) VALUES (\''.port().'\')';


PS: Fais attention, uniquement les variables seront reconnues au sein de doubles guillemets :
$test="Comment allez-vous monsieur $nom ?"; // => OK
$test="Comment allez-vous monsieur nom() ?"; // => Faux
$test="Comment allez-vous monsieur ".nom()." ?"; // => OK
0
Utilisateur anonyme
 
Merci beaucoup à vous cela marche parfaitement.

PS:merci pour l'astuce effectivement ca semble plus simple mais j'ai encore jamais penser a y tester de cette manière.

Encore merci de votre aide.
Bonne journée
0