Accueil > Forum > > > > Erreur très bizarre
Erreur très bizarre
mardi 19 juin 2007 à 19:22:27 |
Erreur très bizarre

Infernus32
|
Bonjour,
Voilà plusieurs heures que cherche une solution à mon promlème, sans succès !
En fait, mon script récupère la "classe CPU" (c'est à dire 'x86' pour un CPU 32 bits ou 'x64' pour un 64 bits) en JavaScript puis l'ajoute à ma table avec l'heure.
Or le problème est que j'obtiens une erreur SQL : "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Javascript'> document.write(navigator.cpuClass); ')' at line 1". Alors que lorsque j'ajoute juste la variable 'date' sans la variable 'cpu', ça marche ! J'ai affiché les valeurs de toutes les variables (date, cpu et sql) avec un echo mais tout à l'air bon. Je vois vraiment pas pourquoi ça bug, ça vient peut être du JS ???
Merci de m'éclairer un peu car là je comprend plus rien 
Voici le code :
$date = date('U'); $cpu = "<script language='Javascript'> document.write(navigator.cpuClass); </script>";
include "sql.php"; // fichier de connection à la BDD SQL
$sql = "INSERT INTO ltable (date,cpu) VALUES('$date','$cpu')";
mysql_query($sql) or die('Erreur SQL !<br><br>'.mysql_error());
|
|
jeudi 21 juin 2007 à 17:11:14 |
Re : Erreur très bizarre

the_wwt
|
Bonjour, et bien c'est plutôt évident le message correspond...Tu as des quote dans ta variable cpu... Je crois qu'il existe une fonction du genre escape_quote... En fait ta requete est celle ci: INSERT INTO ltable (date,cpu) VALUES('date('U')','<script language='Javascript'> document.write(navigator.cpuClass); </script>') Donc je pense que ça ne peux pas marcher... Cdlt, Pierrick
|
|
vendredi 22 juin 2007 à 12:02:10 |
Re : Erreur très bizarre

Infernus32
|
Merci de ta réponse. J'ai donc enlevé les quote aux extrémités de la variable cpu. La requete ne renvoie plus d'erreur mais lorsque je regarde ce qui a été stocké dans la table, ce n'est pas la valeur de la variable cpu mais la ligne de code JS, c'est à dire ça : "<script language='Javascript'> document.write(navigator.cpuClass); </script>" alors qu'il devrait y avoir "x86" par exemple. Avez vous une idée pour éviter ce problème, ou existe une autre méthode pour récupérer une variable JavaScript en PHP ? Je débute en PHP Merci
|
|
vendredi 22 juin 2007 à 14:19:38 |
Re : Erreur très bizarre

the_wwt
|
Bonjour, je crois que tu te trompes profondément... Le code javascript contenu dans ta variable cpu - s'il est envoyé sur la page du client - écrit dans le document la classe du CPU. Mais toi tu ne récupères jamais cette information en php... Tu saisis? Il te faut envoyer cette info dans une requete au serveur soit en ajax soit en redirigeant l'utilisateur vers une page en php à laquelle tu lui donne en paramètre. Dans cette page, tu récupères ce paramètre et là tu execute ton insert... Si tu débutes...bon courage. Cdlt, Pierrick
|
|
vendredi 22 juin 2007 à 16:22:06 |
Re : Erreur très bizarre

Infernus32
|
Je crois avoir compris pourquoi mon code n'avait aucune chance de fonctionner : le JS est exécuté chez le client et le serveur ne peut donc pas connaître la valeur de la variable cpu, c'est bien ça ?
J'ai donc suivi ton conseil d'envoyer la valeur de la variable cpu en paramètre, mais j'ai utilisé la méthode POST et non GET pour que ce soit plus "transparant" (c'est à dire que la variable cpu ne soit pas affichée dans l'url).
Malheureusement, j'obtiens toujours une erreur de syntaxe lors de la requete !
Voici le code :
<?php
$add = (isset($_POST['add']))?$_POST['add']:0; // on récupère l'éventuelle variable postée
if($add==0) { ?>
<form name="form" method="post" action=""> <input name="add" type="hidden" value="1"> <input name="cpu" type="hidden" value="<script language='Javascript'> document.write(navigator.cpuClass); </script>"> <input type="submit" name="Submit" value="Envoyer"> </form>
<? }
else { // ajout des infos à la table
// on récupère les infos $date = date('U'); $cpu = (isset($_POST['cpu']))?$_POST['cpu']:"Inconnu";
include "sql.php";
$sql = "INSERT INTO table (date,cpu) VALUES ('$date','$cpu')";
mysql_query($sql) or die('Erreur SQL !<br><br>'.mysql_error()); // erreur de syntaxe lors de cette requete
mysql_close(); }
?>
|
|
Cette discussion est classée dans : date, mysql, erreur, sql, cpu
Répondre à ce message
Sujets en rapport avec ce message
mysql avec frontpage [ par Joleroy ]
Salut,J utilise frontpage 2003 pour creer des pages web, mais je n' arrive pas a trouver comment se connecter a une base de donné SQL autre que sql se
Problème de date [ par kidpigeyre ]
Voila mon problème : Je dois afficher les emplacements libres d'un certain type entre deux dates (date_debut et date_fin) en sql access.Voici mes deux
sql server ou Mysql [ par snoopcool ]
Bonjour tous le monde!!!Mon proleme est le suivant. J'ai une base de donnée que je ve mettre sur un serveur avec une vingtaine de poste à connecte et
SQL access [ par abdoulax ]
Je débute en base de donnée. J'utilise Access qui possède une gestion des requêtes avec SQL. Ce que je voudrai faire c'est récupérer le nombre de date
[SQL SERVER 2000][SQL] Problème SQL-DMO erreur 21776 [ par rabbiwan ]
Bonjour, J'ai ajouter une connexion et des utilisateurs sur des roles. Lorsque je fais propriété de la connexion et que je vais voir l'accés aux base
erreur "Supplied argument is not a valid MySQL result resource" [ par bidjoubob ]
Salut,Lorsque je transfères mon site comportant du PHP et une base de données en MYSQL, j'obtiens l'erreur "Supplied argument is not a valid MySQL res
Comment effectuer une requete sql avec un test de différence de date ? [ par paddybl ]
bonsoir,voilà mon problémej'ai une table sql server avec un champ date de type dd/jj/aaaaje souhaite faire une requete sql avec comme condition, "trou
Erreur de test...SQL Server [ par cid019 ]
voila l'erreur que j'ai lorsque j'essai d'executer la requete suivante:iif(param = val, val1, sum(val2))[BC30201] Expression expected est l'erreurJe n
procedure pour travailler sur les DATES [ par Bowen123 ]
Bonjour,Sous SQL SERVER,J'ai une table comprenant une Ligne par demi journée (tbl_CALENDRIER) défini par une date et un indice de demijournée (0 ou 1)
DATETIME SQL SERVER AU SECOURS !!!!!! [ par MACHOMAN ]
bonjour, j'ai plusieurs pb avec les datetime sous sql server : 1 - j'ai deux champs datetime, dans le premier il y a une date dans le second une heure
Livres en rapport
|
Derniers Blogs
[MIX10] KEYNOTE DEUXIèME JOURNéE - INTERNET EXPLORER 9, HTML5, VISUAL STUDIO 2010, ODATA[MIX10] KEYNOTE DEUXIèME JOURNéE - INTERNET EXPLORER 9, HTML5, VISUAL STUDIO 2010, ODATA par cyril
Le deuxième keynote du mix fut très riche en contenu. Internet Explorer 9 Juste un après le lancement de Internet Explorer 8, Microsoft a dévoilé les nouveautés de Internet Explorer 9. Désormais, IE supportera HTML5, SVG et CSS3. L'élément ...
Cliquez pour lire la suite de l'article par cyril CERTIFICATIONS BETA .NET 4CERTIFICATIONS BETA .NET 4 par KooKiz
Les inscriptions pour les certifications beta .NET 4 ont commencé. L'inscription est offerte pour les examens suivants : - 71-511, TS: Windows Applications Development with Microsoft .NET Framework 4 - 71-515, TS: Web Applications Development with...
Cliquez pour lire la suite de l'article par KooKiz [MIX 2010] - MICROSOFT TRANSLATOR TECHNOLOGY PREVIEW V2[MIX 2010] - MICROSOFT TRANSLATOR TECHNOLOGY PREVIEW V2 par redo
J'imagine que la plupart d'entre vous connaissent bien et utilisent le service de traduction de Google, mais connaissez-vous celui de Microsoft . Microsoft Translator ? Effectivement, Microsoft nous annoncé le lancement version 2 de la Technologie Preview...
Cliquez pour lire la suite de l'article par redo LANCEMENT EN PREVIEW DE CYCLONE LORS DES TECHDAYS 2010!LANCEMENT EN PREVIEW DE CYCLONE LORS DES TECHDAYS 2010! par MPOWARE
Toutes les vidéos de ce lancement sont en ligne!
Partie I - Intro
http://www.youtube.com/watch?v=LkQzTQ8T6CA
Partie II - Démo 1
http://www.youtube.com/watch?v=drAhYQ7lqvo
Partie III - Démo 2
http://www.youtube.com/watch?v=c8KM_1Gqybc...
Cliquez pour lire la suite de l'article par MPOWARE [WP7] JE NE VEUX PAS D'UN NOUVEL IPHONE[WP7] JE NE VEUX PAS D'UN NOUVEL IPHONE par FREMYCOMPANY
Je pense qu'ils ont besoin d'une piqure de rappel chez Microsoft : c'est bien gentil d'avoir une interface jolie, mais si c'est pour avoir un truc qui ne convainct pas dedans, c'est peine perdue.
---->
Système ouvert ----> Fermé ?
P...
Cliquez pour lire la suite de l'article par FREMYCOMPANY
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|