[PHP SQL] Insert into
Résolu/Fermé
widi70
Messages postés
649
Date d'inscription
jeudi 4 janvier 2007
Statut
Membre
Dernière intervention
22 juillet 2019
-
9 déc. 2009 à 09:48
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 - 9 déc. 2009 à 16:07
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 - 9 déc. 2009 à 16:07
A voir également:
- [PHP SQL] Insert into
- Touche insert - Guide
- Easy php - Télécharger - Divers Web & Internet
- Récupération serveur sql - Télécharger - Gestion de données
- Disk boot failure insert system disk and press enter - Guide
- Your device ran into a problem and needs to restart - Forum Windows 10
12 réponses
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
9 déc. 2009 à 10:53
9 déc. 2009 à 10:53
as tu mis une cle primaire a ta table
perso je mets toujours le premier champ
id (ou num) en INT cle primaire autoincrement
rajoutes les en plus de tes autres champs
et ta requette devient donc:
premiere valeur vide, mysql se charge de l'incrementer
perso je mets toujours le premier champ
id (ou num) en INT cle primaire autoincrement
rajoutes les en plus de tes autres champs
et ta requette devient donc:
$insert="insert into Impression values('','".$numbon."','".$edition."','".$cb."','".$autre."')";
premiere valeur vide, mysql se charge de l'incrementer
widi70
Messages postés
649
Date d'inscription
jeudi 4 janvier 2007
Statut
Membre
Dernière intervention
22 juillet 2019
65
9 déc. 2009 à 11:03
9 déc. 2009 à 11:03
ok merci j'ai recréer un champs idImpression qui s'increment et qui est ma clés.
Mais le pb est toujours le même
insert into Impression values('','20091201001','1','1','1')
et dans ma base
4 ,2147483647,1,1,1
voici le code
$numerocommnade=$_GET['cmd'];
echo $numerocommnade."<br>";
$insertionbss="insert into Impression values('','".$numerocommnade."','1','1','1')";
echo $insertionbss;
$requete=mysql_query($insertionbss) or die('Erreur SQL'.mysql_error());
mais je fait par exemple :
$numerocommnade=2;
la ça fonctionne correctement
je ne comprend rien
merci de ton aide
Mais le pb est toujours le même
insert into Impression values('','20091201001','1','1','1')
et dans ma base
4 ,2147483647,1,1,1
voici le code
$numerocommnade=$_GET['cmd'];
echo $numerocommnade."<br>";
$insertionbss="insert into Impression values('','".$numerocommnade."','1','1','1')";
echo $insertionbss;
$requete=mysql_query($insertionbss) or die('Erreur SQL'.mysql_error());
mais je fait par exemple :
$numerocommnade=2;
la ça fonctionne correctement
je ne comprend rien
merci de ton aide
widi70
Messages postés
649
Date d'inscription
jeudi 4 janvier 2007
Statut
Membre
Dernière intervention
22 juillet 2019
65
9 déc. 2009 à 11:52
9 déc. 2009 à 11:52
je ne comprend rien
si je fait
$numerocommnade='2009120100';
$insertionbss="insert into Impression values('".$numerocommnade."','".$edition."','".$cb."','".$autre."')";
echo $insertionbss;
$requete=mysql_query($insertionbss) or die('Erreur SQL'.mysql_error());
il m'insére bien 2009120100 dans premiere colonne bdd
mais si je fait
$numerocommnade='20091201001';
$insertionbss="insert into Impression values('".$numerocommnade."','".$edition."','".$cb."','".$autre."')";
echo $insertionbss;
$requete=mysql_query($insertionbss) or die('Erreur SQL'.mysql_error());
il m'insére 2147483647 dans la première colone de ma bdd
Enfaite si $numerocommnade à un nombre de caractère < 10 c'est ok
et si $numerocommnade à un nombre de caractère > 10 il insére 2147483647
Alors j'ai vérifié ma table ma colone numCommande dans Impression est un int(100) donc ça ne vient pas de la
Autre idées???
Merci bcp
si je fait
$numerocommnade='2009120100';
$insertionbss="insert into Impression values('".$numerocommnade."','".$edition."','".$cb."','".$autre."')";
echo $insertionbss;
$requete=mysql_query($insertionbss) or die('Erreur SQL'.mysql_error());
il m'insére bien 2009120100 dans premiere colonne bdd
mais si je fait
$numerocommnade='20091201001';
$insertionbss="insert into Impression values('".$numerocommnade."','".$edition."','".$cb."','".$autre."')";
echo $insertionbss;
$requete=mysql_query($insertionbss) or die('Erreur SQL'.mysql_error());
il m'insére 2147483647 dans la première colone de ma bdd
Enfaite si $numerocommnade à un nombre de caractère < 10 c'est ok
et si $numerocommnade à un nombre de caractère > 10 il insére 2147483647
Alors j'ai vérifié ma table ma colone numCommande dans Impression est un int(100) donc ça ne vient pas de la
Autre idées???
Merci bcp
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
9 déc. 2009 à 13:04
9 déc. 2009 à 13:04
si je fait
$numerocommnade='2009120100';
$insertionbss="insert into Impression values('".$numerocommnade."','".$edition."','".$cb."','".$autre."')";
il est passé ou ton premier champp dans Values(... ?
$numerocommnade='2009120100';
$insertionbss="insert into Impression values('".$numerocommnade."','".$edition."','".$cb."','".$autre."')";
il est passé ou ton premier champp dans Values(... ?
insertionbss="insert into Impression values('','".$numerocommnade."','".$edition."','".$cb."','".$autre."')";
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
widi70
Messages postés
649
Date d'inscription
jeudi 4 janvier 2007
Statut
Membre
Dernière intervention
22 juillet 2019
65
9 déc. 2009 à 13:31
9 déc. 2009 à 13:31
ben j'ai essayé avec un id et sans id mais ça ne change rien le pb est toujours la.
merci de ton aide
merci de ton aide
widi70
Messages postés
649
Date d'inscription
jeudi 4 janvier 2007
Statut
Membre
Dernière intervention
22 juillet 2019
65
9 déc. 2009 à 14:59
9 déc. 2009 à 14:59
up?
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
9 déc. 2009 à 15:07
9 déc. 2009 à 15:07
Première chose: les requêtes s'écrivent en majuscule.
Donc:
Ensuite, mais je ne sais pas si dans la finalité ça change grand chose, je met toujours les guillements à l'inverse de toi:
Pour finir, si tu met un colonne id en premier avec un auto_increment, il faut le rajouter avec un champ vide dans ta requête et donc:
Donc:
$numerocommnade='2009120100'; $insertionbss="INSERT INTO Impression VALUES('".$numerocommnade."','".$edition."','".$cb."','".$autre."')";
Ensuite, mais je ne sais pas si dans la finalité ça change grand chose, je met toujours les guillements à l'inverse de toi:
$numerocommnade='2009120100'; $insertionbss='INSERT INTO Impression VALUES("'.$numerocommnade.'","'.$edition.'","'.$cb.'","'.$autre.'")';
Pour finir, si tu met un colonne id en premier avec un auto_increment, il faut le rajouter avec un champ vide dans ta requête et donc:
$numerocommnade='2009120100'; $insertionbss='INSERT INTO Impression VALUES("", "'.$numerocommnade.'", "'.$edition.'", "'.$cb.'", "'.$autre.'")';
widi70
Messages postés
649
Date d'inscription
jeudi 4 janvier 2007
Statut
Membre
Dernière intervention
22 juillet 2019
65
9 déc. 2009 à 15:20
9 déc. 2009 à 15:20
Merci bcp de votre aide mais le probleme est toujours le même
voici mon code
<? session_start();
include('../fonction/connect.php');
$numerocommnade='20091201001';
$edition='0';
$cb='0';
$autre='0';
$insertion='INSERT INTO Impression VALUES("", "'.$numerocommnade.'", "'.$edition.'", "'.$cb.'", "'.$autre.'")';
$requete=mysql_query($insertion) or die('Erreur SQL'.mysql_error());
?>
voici ma table:
CREATE TABLE IF NOT EXISTS `Impression` (
`idImpression` int(10) NOT NULL auto_increment,
`NumCmd` int(100) NOT NULL,
`Edition` int(2) NOT NULL,
`CB` int(2) NOT NULL,
`Autres` int(2) NOT NULL,
PRIMARY KEY (`idImpression`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
et le contenu de ma table
(1, 2147483647, 0, 0, 0)
je ne comprend pas....
Merci
voici mon code
<? session_start();
include('../fonction/connect.php');
$numerocommnade='20091201001';
$edition='0';
$cb='0';
$autre='0';
$insertion='INSERT INTO Impression VALUES("", "'.$numerocommnade.'", "'.$edition.'", "'.$cb.'", "'.$autre.'")';
$requete=mysql_query($insertion) or die('Erreur SQL'.mysql_error());
?>
voici ma table:
CREATE TABLE IF NOT EXISTS `Impression` (
`idImpression` int(10) NOT NULL auto_increment,
`NumCmd` int(100) NOT NULL,
`Edition` int(2) NOT NULL,
`CB` int(2) NOT NULL,
`Autres` int(2) NOT NULL,
PRIMARY KEY (`idImpression`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
et le contenu de ma table
(1, 2147483647, 0, 0, 0)
je ne comprend pas....
Merci
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
9 déc. 2009 à 15:37
9 déc. 2009 à 15:37
Remplace:
par:
Mais sinon quelle est la nature du problème ?
J'ai pas tout suivi et il faudrait que tu précises au passage ce que change ou non les changements qu'on te fait faire.
Hésite pas à rajouter un
pour voir comment réagit ta requête et ce qui est traité par le serveur.
$requete=mysql_query($insertion) or die('Erreur SQL'.mysql_error());
par:
mysql_query($insertion) or die('Erreur SQL'.mysql_error());
Mais sinon quelle est la nature du problème ?
J'ai pas tout suivi et il faudrait que tu précises au passage ce que change ou non les changements qu'on te fait faire.
Hésite pas à rajouter un
echo $insertion;
pour voir comment réagit ta requête et ce qui est traité par le serveur.
widi70
Messages postés
649
Date d'inscription
jeudi 4 janvier 2007
Statut
Membre
Dernière intervention
22 juillet 2019
65
9 déc. 2009 à 15:52
9 déc. 2009 à 15:52
Ok ok toujours la même chose
<? session_start();
include('../fonction/connect.php');
$numerocommnade='20091201001';
$edition='0';
$cb='0';
$autre='0';
$insertion='INSERT INTO Impression VALUES("", "'.$numerocommnade.'", "'.$edition.'", "'.$cb.'", "'.$autre.'")';
echo $insertion;
mysql_query($insertion) or die('Erreur SQL'.mysql_error());
?>
echo $insertion affiche :
INSERT INTO Impression VALUES("", "20091201001", "0", "0", "0")
mais dans ma base il y a
(2, 2147483647, 0, 0, 0);
c'est un truc impossible
si par exemple je met
$numerocommnade='2009120100'; //j'enlève un chiffre ou plus
=> la ça fonctionne le nombre inscrit est bien le nombre qui va aller dans ma bdd
mais si je met
$numerocommnade='20091201005';// avec un autre chiffre à la fin ou en ajoutant
=>le nombre inscrit n'ira pas dans la bdd, mais c'est ce nombre 2147483647 qui ira pourtant dans le insert into c'est bien le chiffre de $numerocommnade qui apparait
Je te dit c'est incomprehensible
enfin merci bcp de ton aide
<? session_start();
include('../fonction/connect.php');
$numerocommnade='20091201001';
$edition='0';
$cb='0';
$autre='0';
$insertion='INSERT INTO Impression VALUES("", "'.$numerocommnade.'", "'.$edition.'", "'.$cb.'", "'.$autre.'")';
echo $insertion;
mysql_query($insertion) or die('Erreur SQL'.mysql_error());
?>
echo $insertion affiche :
INSERT INTO Impression VALUES("", "20091201001", "0", "0", "0")
mais dans ma base il y a
(2, 2147483647, 0, 0, 0);
c'est un truc impossible
si par exemple je met
$numerocommnade='2009120100'; //j'enlève un chiffre ou plus
=> la ça fonctionne le nombre inscrit est bien le nombre qui va aller dans ma bdd
mais si je met
$numerocommnade='20091201005';// avec un autre chiffre à la fin ou en ajoutant
=>le nombre inscrit n'ira pas dans la bdd, mais c'est ce nombre 2147483647 qui ira pourtant dans le insert into c'est bien le chiffre de $numerocommnade qui apparait
Je te dit c'est incomprehensible
enfin merci bcp de ton aide
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
9 déc. 2009 à 16:01
9 déc. 2009 à 16:01
Logique.
L'explication est là.
Passe la colonne de INT à BIGINT.
int (accepte des nombres de -2147483648 à +2147483647)
L'explication est là.
Passe la colonne de INT à BIGINT.
widi70
Messages postés
649
Date d'inscription
jeudi 4 janvier 2007
Statut
Membre
Dernière intervention
22 juillet 2019
65
9 déc. 2009 à 16:05
9 déc. 2009 à 16:05
OLLALALALALALALALALALALAL
quelle merde
enfin en tout cas
MERCI MERCI MERCI
j'aurais jamais trouvé
MERCI BCP
bonne journée
quelle merde
enfin en tout cas
MERCI MERCI MERCI
j'aurais jamais trouvé
MERCI BCP
bonne journée
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
9 déc. 2009 à 16:07
9 déc. 2009 à 16:07
Je me suis souvenu que INT était limité en taille sinon j'aurai pas trouvé non plus. :p