Tom's Guide > Forum > Programmation > Probleme Ecriture dans base SQL (insert, update, delete)

Probleme Ecriture dans base SQL (insert, update, delete)

Forum Programmation : Probleme Ecriture dans base SQL (insert, update, delete)

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour,

voila mon gros soucy sa doit etre une erreur toute bête mais qui me block dans mon aprentissage du PHP/MySql

J'arrive a lire mes enregistrement avec un page PHP simple donc un SELECT je peut entrer toute les contreinte possible et tout marche

Des que je doit ecrire un enregistrement dans ma base INSERT TO ou même un update, la rien ne ce passe. Les requete march dans PHPmyadmin et sont correctement ajouter, le fichier de ma database n'est pas en mode "read only" donc je ne voit vraiment pas ou est situé le problème.

Help me please!!!!

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

bonjour,
c'est quoi l'erreur que t'affiche le php?
http://php.benscom.com/manual/fr/f [...] -error.php

------------------------------ Ne pas oublier le [resolu] pour finir le sujet.
Penser à voir les tutos, ca peut aider!
Répondre à coca25

c'est insert into
pas insert to ...

va ici : phpdebutant.org > à droite requete mysql. :)

Répondre à okinou

justement il n'y à pas de message d'erreur au debut je parter sur un script compliquer mais la je fait les tests avec une simple requete d'ajout (je suis sur un server 2003 iis en local) la page ce charge bien mais une foi que je regarde ma base de donner rien n'a bouger???????????

Répondre à Homy

Rajoute un or die(mysql_error()); sur tes requetes pour retourner les erreurs.

Répondre à okinou

j'ai bien fait un insert into :) pour vous dire j'ai même repris des script et base sql de base (sitedu0) pour effectuer mes tests mais rien ne fait je pense que c'est plutôt un problème de config quelque par

Répondre à Homy

avec le le or die j'ai l'eerer suivante Incorect integer value: "for column 'ID' at row 1

Répondre à Homy

et si tu postais le code? ;)

------------------------------ Ne pas oublier le [resolu] pour finir le sujet.
Penser à voir les tutos, ca peut aider!
Répondre à coca25

voici ma requete


<?php
mysql_connect("localhost", "root", "mot_de_passe" );
mysql_select_db("coursphp" );

// On ajoute une entrée avec mysql_query
mysql_query("INSERT INTO jeux_videos VALUES('', 'Battlefield 1942', 'Patrick', 'PC', '45', '50', '2nde guerre mondiale')" ) or die(mysql_error());

mysql_close();
?>


j'ai essayer avec plusieur autres requete ainsi que les update et delete rien ne march tandis que tout ce passe bien dans phpmyadmin manuellement. Les requete pour lire les enregistrement ce passe niquel

Répondre à Homy

la colonne id est elle en auto_increment?
c'est la premiere colonne?

------------------------------ Ne pas oublier le [resolu] pour finir le sujet.
Penser à voir les tutos, ca peut aider!
Répondre à coca25

peut tu poster la structure de la table.

Répondre à okinou

CREATE TABLE `jeux_videos` (
`ID` int(10) unsigned NOT NULL auto_increment,
`nom` varchar(100) NOT NULL default '',
`possesseur` varchar(50) NOT NULL default '',
`console` varchar(25) NOT NULL default '',
`prix` decimal(10,0) NOT NULL default '0',
`nbre_joueurs_max` tinyint(4) NOT NULL default '0',
`commentaires` text NOT NULL,
KEY `ID` (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=51 ;

Répondre à Homy

t'as clé id n'est pas primaire.
Dans phpmyadmin, sur ta table, rajoute une clé de type primaire sur le champ ID.
D'ailleur je me demande comment tu as pu y mettre un auto_increment sans en faire une clé primaire. ;P


Message édité par okinou le 30-05-2007 à 17:43:52
------------------------------ La boutique Sexy : http://www.dream-shop.fr pour toutes vos envies à petits prix !
Webmaster, rentabilisez votre trafic : http://www.dream-shop.fr/affiliation 28% de commission !
Répondre à okinou

le problème perciste :s
ce qui est bisar et que je puisse lir et pas ecrire pourtant j'ai tout les droit et aucun dossier n'empeche l'écriture...

Répondre à Homy


CREATE TABLE `jeux_videos` (
`ID` int(10) unsigned NOT NULL auto_increment,
`nom` varchar(100) NOT NULL default '',
`possesseur` varchar(50) NOT NULL default '',
`console` varchar(25) NOT NULL default '',
`prix` decimal(10,0) NOT NULL default '0',
`nbre_joueurs_max` tinyint(4) NOT NULL default '0',
`commentaires` text NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=51 ;

Répondre à okinou

du nouveau!!! par contre si je force l'id (donc pour mon 51eme enregistrment je met en value 51) sa ecri bien dans la table. Je suis perdu!

Répondre à Homy

une solution trouver il ne faut pas ajouter l ID qui s'autoincremente dans la requete mais bon je c'est qu'on peut le faire.

Répondre à Homy

Non tu ne peut pas le faire, tu ne dois pas lui designé d'id vu qu'il s'ajoute automatiquement.

mysql_query("INSERT INTO jeux_videos VALUES('', 'Battlefield 1942', 'Patrick', 'PC', '45', '50', '2nde guerre mondiale')" )

ceci était bon par conséquent.

Répondre à okinou

oui mai ne marcher pas tandis que

sa ne march pas

mysql_query("INSERT INTO jeux_videos (ID,nom,possesseur,console,prix,joueurs_max,commentaires) VALUES('', 'Battlefield 1942', 'Patrick', 'PC', '45', '50', '2nde guerre mondiale')" )


et sa sa march


mysql_query("INSERT INTO jeux_videos (nom,possesseur,console,prix,joueurs_max,commentaires) VALUES( 'Battlefield 1942', 'Patrick', 'PC', '45', '50', '2nde guerre mondiale')" )


tres bisar ce qui m'arrive

Répondre à Homy

Ecris correctement sans quoi je fermerais le topic.

Répondre à okinou

ba ferme le topic vu que tu est plus axé sur l'orthographe que sur une réponse...

Répondre à Homy

Non c'est par respect de ceux qui te lisent pour t'aider.

Répondre à okinou
Tom's Guide > Forum > Programmation > Probleme Ecriture dans base SQL (insert, update, delete)
Aller à :

Il y a 1717 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens