insert into ne fonctionne pas sur le serveur

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : insert into ne fonctionne pas sur le serveur

Re: insert into ne fonctionne pas sur le serveur

par tom_nameless » 17 sept. 2009, 11:36

je n'ai pas vu.. ou pas compris ton post...mais merci quand même :|

Re: insert into ne fonctionne pas sur le serveur

par Berzemus » 17 sept. 2009, 10:26

Il ne faut pas nommer une table "quote".
J'ai modifié le nom en "quotation"... et ça fonctionne :lol:
Utiliser des mots réservés ou des fonctions de mysql est en général une assez mauvaise idée, mais on peut le faire en les échappent:

`quote` au lieu de quote. Je l'ais dit un peu plus haut, mais c'est pas grave.

Re: insert into ne fonctionne pas sur le serveur

par tom_nameless » 17 sept. 2009, 10:07

Le probleme ne vient pas du FLOAT j'ai toujours le même message d'erreur ! !!

2 minutes plus tard !!!
je viens de trouver l'erreur :
Il ne faut pas nommer une table "quote".
J'ai modifié le nom en "quotation"... et ça fonctionne :lol:

Re: insert into ne fonctionne pas sur le serveur

par AB » 16 sept. 2009, 17:31

peut on utiliser INT pour un prix de forme 10.50 ou 10,50
Ben non, INT est un entier. Il te faut un FLOAT pour enregistrer ce type de prix (ceci dit, rien ne t'empêche de les multiplier par 100 pour continuer d'utiliser les INT, plus rapides).
Pour la parenthèse, c'est pas un peu risqué ? Si l'on passe par un formulaire de saisie on peut toujours formater le nombre avec deux décimales avant de le multiplier mais bon ... :-k

@tom_nameless, attention le séparateur de partie décimale en php et en mysql est un point et non une virgule.

Re: insert into ne fonctionne pas sur le serveur

par Berzemus » 16 sept. 2009, 13:22

peut on utiliser INT pour un prix de forme 10.50 ou 10,50
Ben non, INT est un entier. Il te faut un FLOAT pour enregistrer ce type de prix (ceci dit, rien ne t'empêche de les multiplier par 100 pour continuer d'utiliser les INT, plus rapides).

Re: insert into ne fonctionne pas sur le serveur

par tom_nameless » 16 sept. 2009, 13:03

peut on utiliser INT pour un prix de forme 10.50 ou 10,50

Re: insert into ne fonctionne pas sur le serveur

par Berzemus » 16 sept. 2009, 13:02

$sql="INSERT INTO quote(id_quote, id_member, nom_project, number_quote, nom, qte, price_key, date_quotation) VALUES('', '$id_member', '$nom_project', '$quote', '$ref', '$qte', '$key', '$date')";
$req = mysql_query($sql) or die("erreur sql!<br>".$sql."<br>".mysql_error());
quote() est aussi une fonction mysql. Et sous cette forme, il n'y à rien qui indique à Mysql qu'il s'agisse d'une fonction ou d'une table. Il faut donc échapper le nom de ta table avec les accents inversés (et un espace après le nom de la table ne fera pas de mal non plus).
$sql="INSERT INTO `quote` (id_quote, id_member, nom_project, number_quote, nom, qte, price_key, date_quotation) VALUES('', '$id_member', '$nom_project', '$quote', '$ref', '$qte', '$key', '$date')";
$req = mysql_query($sql) or die("erreur sql!<br>".$sql."<br>".mysql_error());

Re: insert into ne fonctionne pas sur le serveur

par Dr@ke » 16 sept. 2009, 12:39

Peut-être un soucis avec le type d'un champ...
http://www.vulgarisation-informatique.c ... onnees.php

Re: insert into ne fonctionne pas sur le serveur

par tom_nameless » 16 sept. 2009, 12:31

quote c'est le nom de la table..

Tu penses que ça peu poser un probleme ?

Re: insert into ne fonctionne pas sur le serveur

par stopher » 16 sept. 2009, 12:26

Hi ,

Pour moi , c'est quote qui pose problème , je n'ai jamais utilisé cette fonction mysql directement .

Elle ne doit pas s'appliquer plutôt dans VALUES ?

Ch.

insert into ne fonctionne pas sur le serveur

par tom_nameless » 16 sept. 2009, 12:09

Bonjour,

suite du post : php-debutant/insert-into-qui-fonctionne ... 49863.html

ma requete fonctionnait en local.. mais pas sur le serveur. Voici le message d'erreur :
erreur sql!
INSERT INTO quote(id_quote, id_member, nom_project, number_quote, nom, qte, price_key, date_quotation) VALUES('', '17', 'London Hospital', 'London Hospital17', 'European Cylinder.RS SIGMA.333H.35-10.04.nothing', '1', '2', '2009.16.09')
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 'quote('id_quote', 'id_member', 'nom_project', 'number_quote', 'nom', 'qte', 'pri' at line 1
ma requete de base :
$sql="INSERT INTO quote(id_quote, id_member, nom_project, number_quote, nom, qte, price_key, date_quotation) VALUES('', '$id_member', '$nom_project', '$quote', '$ref', '$qte', '$key', '$date')";
$req = mysql_query($sql) or die("erreur sql!<br>".$sql."<br>".mysql_error());