Problème de non erreur sur insertion

Résolu
Darkgattsu Messages postés 6 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 23 août 2010 - 23 août 2010 à 09:46
Darkgattsu Messages postés 6 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 23 août 2010 - 23 août 2010 à 14:22
Bonjour,

Depuis Vendredi je fais des recherches pour trouver une solution à mon problème. Je viens donc chercher de l'aide sur mon fofo favoris.

Alors en théorie le fait d'insérer du texte dans un champ date ou int i.e., devrait retourner une erreur sauf que ce n'est pas le cas dans mon cas ^^.
Ma table :
selection(int idselect,date date,int ides,int niv,int idrub,varchar fct,varchar exl,varchar doc)

Ma requête de test:
insert into selection(date) values ("holaquetal")

Mon nouvel enregistrement:
idselect normalement incrémenté
date : 0000-00-00
ides : 0
niv : 0
idrub : 0
fct, exl et doc restent vide.

Je pense qu'un réglage dans mysql est mal effectué mais quoi :$.
Merci de votre aide

5 réponses

cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
23 août 2010 à 11:26
Bonjour,

L'erreur est juste. Pas besoin d'aller chercher bien loin, c'est précisé dans le manuel mysql :
http://dev.mysql.com/doc/refman/5.0/fr/date-and-time-types.html

Cordialement.

JC
3
Darkgattsu Messages postés 6 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 23 août 2010
23 août 2010 à 12:19
Merci JC,

du coup je vérifie l'erreur à partir de mon script php comme ceci:

$re = "insert into selection(ides) values ('bla')";
$req = $db->query($re);
$id = mysql_insert_id();
$reqverif = $db->query("select date from selection where idselect=".$id);
$res = $db->fetch_assoc($reqverif);
if ($res['date'] == "0000-00-00"){
$db->query("delete from selection where idselect=".$id);
$db->query("alter table selection AUTO_INCREMENT=".$id);
echo "insertion invalide pour ".$re;
}


est-ce une bonne manière de faire? car je ne vois pas comment faire autrement.
0
cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
23 août 2010 à 12:50
est-ce une bonne manière de faire?

Non.

D'où sort la date ? Formulaire ?

Cordialement.

JC
0
Darkgattsu Messages postés 6 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 23 août 2010
23 août 2010 à 14:20
au final la date proviendra d'une autre table donc pas besoin de vérifier le format... désolé pour le dérangement.Ce qui me gênait au départ était de ne pas récupérer de mysql_error pour une mauvaise insertion mais bon je ferais sans try catch.

Merci
Clem
0

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

Posez votre question
Darkgattsu Messages postés 6 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 23 août 2010
23 août 2010 à 14:22
*je ferai ^^
0
Rejoignez-nous