Syntaxe ???

Résolu
Zeus1973 Messages postés 59 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 15 août 2012 - 24 juil. 2012 à 18:01
NHenry Messages postés 15123 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 20 mai 2024 - 1 août 2012 à 14:09
bonjour

pourriez vous le dire si c'est un problème de syntaxe ou autre me corriger svp

je récupère les identifiants
-----------------------------

$id_client = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["id"])));
$NomCarte = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["nomcarte"])));


je modifie
----------

$result=mysql_query("update planningcarte SET id_carte=(select id_carte from cartes where nomcarte='$NomCarte') WHERE id_client='$id_client'");


c'est la 1er requête qui m’intéresse :
ça ne fonctionne pas ! mais si je fais comme ça fonctionne.


$result=mysql_query("update planningcarte SET id_carte=(select id_carte from cartes where nomcarte='toto') WHERE id_client='2'");


un coup main merci

8 réponses

NHenry Messages postés 15123 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 20 mai 2024 159
24 juil. 2012 à 23:24
Bonjour,

Lis la page d'aide :
http://php.net/manual/fr/function.mysql-query.php

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
3
NHenry Messages postés 15123 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 20 mai 2024 159
1 août 2012 à 14:09
Bonjour,

Pour vider un formulaire :
http://www.tizag.com/htmlT/htmlreset.php

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
3
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
24 juil. 2012 à 18:48
Bonjour.

Je dirais que c'est avant tout un problème de section. Si tu pouvais poster dans la catégorie "php" plutôt que "C++", tu aurais plus de chance d'avoir une réponse...
Je déplace dans la section appropriée.

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
0
Zeus1973 Messages postés 59 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 15 août 2012
24 juil. 2012 à 19:00
oups ok désolé
pourriez vous me donner le liens merci

Ne rester pas ignorant svp
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
NHenry Messages postés 15123 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 20 mai 2024 159
24 juil. 2012 à 19:13
Bonjour,

"ça ne fonctionne pas"
Un message d'erreur ?
Que valent les variables ?

Regardes du coté des requêtes paramétrées, pour plus de sécurité.

Si id_client est un entier, il est préférable de retirer les '
Mais attention aux injections.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
0
Zeus1973 Messages postés 59 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 15 août 2012
24 juil. 2012 à 19:45
bonjour

je n'ai pas de message d'erreur
je te post mon fichier MODIF_POST.PHP détaillé avec les reponses que je recois lorsque je fait un test
<?php
// (bouton "Modifier" du formulaire)
if(isset($_POST["Modifier"]))
{
// on se connecte à notre base
$base = mysql_connect ('localhost', 'root', '') or die ('ERREUR '.mysql_error());  
mysql_select_db ('kserver3', $base)or die ('ERREUR '.mysql_error());
if (!$base)
{
die ('Impossible d\'utiliser la base : ' . mysql_error());
} 

//On attribue une variable pour chaque champ du formulaire

$nom = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["nom"])));

echo "son nom est ".$nom; // ok ca fonctionne

$telephone = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["telephone"])));

echo "
son num est ".$telephone; // ok ca fonctionne

$id_client = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["id"])));

 echo '
son ip du client est '.$id_client;// ok ca fonctionne

$NomCarte = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["nomcarte"])));

echo "
le nom de la carte est: ".$NomCarte;// ok ca fonctionne
------------------------------------------------------------------------------------------------
REPONSE:
----------------
son nom est Delmo
son num est 0484/235548
son ip du client est 2
le nom de la carte est: carte2   jusque la tout va bien
------------------------------------------------------------

//On enregistre les données modifiées
------------------------------------------
$result = mysql_query("select cartes.id_carte from cartes where nomcarte='$NomCarte'"); une fois que je passe une des variable dans la requete ca ne fonctionne plus

 echo "
le nom de la carte est: ".($result);
----------------------------------------------------
RESULTAT
-------------le nom de la carte est: Resource id #4  au lieu de me renvoiyer 2 qui est l'id de la carte
-----------------------------------------------------------------
//Si il y a une erreur, on crie ^^
if (!$result) 
{
    die('Requête invalide : ' . mysql_error());
}
else 
{
//Si tout va bien, on informe que la modification est faite
echo 'La modification à été effectué avec succès. 
}

}
?>

ghost73 est actuellement connecté   	Envoyer un message privé Modifier/Supprimer le message


Ne rester pas ignorant svp
0
Zeus1973 Messages postés 59 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 15 août 2012
25 juil. 2012 à 17:08
désolé a tous
j'ai compris mon erreur :jamais j'aurai une réponse satisfaisante avec ca
$result = mysql_query("select cartes.id_carte from cartes where nomcarte='$NomCarte'"); une fois que je passe une des variable dans la requete ca ne fonctionne plus

 echo "
le nom de la carte est: ".($result);

pfff n'importe quoi lol
ma deuxième erreur vient du fait que dans mon formulaire je récupère deux id du même nom(name=id et l'autre name=id)donc mon programme prenait le premier venu pffff enfin l’essentiel c'est que je l'ai remarquer et maintenant ça fonctionne merci quand même a tout ceux qui m'ont aider ou voulut m'aider.

Ne rester pas ignorant svp
0
Zeus1973 Messages postés 59 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 15 août 2012
26 juil. 2012 à 20:01
bonjour

comment vider le formulaire après incursion des données ??? Merci


Ne rester pas ignorant svp
0
Rejoignez-nous