Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

[Résolu] [PHP/MySQL] YEAR récalcitrant


Messages recommandés

Posté(e) (modifié)

Bonsoir 'sieurs-dames, donc j'ai un problème avec un petit script PHP, à savoir que je veux entrer un entier de type YEAR (en somme : une année) dans une base de données tout ce qu'il y a de plus innocente, or systématiquement, et quelle que soit la valeur donnée à bouffer à MySQL, la valeur enregistrée reste invariablement 2000.

 

Donc v'là l'code nécessairement incriminé :

   if (isset($_POST['support']) AND isset($_POST['brand']) AND isset($_POST['nom_support']) AND isset($_POST['annee']))
  {
if ($_POST['support']!=NULL AND $_POST['brand']!=NULL AND $_POST['nom_support']!=NULL AND $_POST['annee']!=NULL)
{
 $support = mysql_real_escape_string(htmlspecialchars($_POST['support']));
 $brand = mysql_real_escape_string(htmlspecialchars($_POST['brand']));
 $nom_support = mysql_real_escape_string(htmlspecialchars($_POST['nom_support']));
 $annee = mysql_real_escape_string(htmlspecialchars($_POST['annee']));
 mysql_query("INSERT INTO supports VALUES('$support','$brand','$nom_support','.$annee')") or die('Erreur SQL !<br>' .$sql. '<br>'. mysql_error());
 echo '<p>'.$brand.' '.$nom_support.' a été ajouté(e) correctement.</p>';
}
  }

Sachant que toutes les autres valeurs sont parfaitement entrées dans la base, que la valeur prise par $annee (celle usée dans la requête SQL) est bien l'année que j'ai entré dans le formulaire qui nous envoie à ce code (un pitit <input type="text" name="annee" /> pour ne rien vous cacher)

Je précise également que je peux modifier manuellement (via PHP My Admin) la valeur incriminée, pour lui donner comme bon me semble n'importe quelle valeur pouvant être prise par le type YEAR (et partant celles que je m'échine à y entrer), et il ne s'agit pas là non plus d'un reliquat du bug de l'an 2000, puisque même des années antérieures se transforment en 2000.

 

Donc, si quelqu'un sait m'expliquer quelle est mon erreur (ça doit bien venir de moi, au fond :P ), qu'il ne se gêne pas.

 

Merci d'avance :P

Modifié par Phantom-X

Posté(e)
Donc v'là l'code nécessairement incriminé :
(...)
 mysql_query("INSERT INTO supports VALUES('$support','$brand','$nom_support','.$annee')")

A quoi te sert le point qui se trouve devant "$annee", exactement ? ;-)
Posté(e) (modifié)

À rien :P

 

Bon ben voilà, problème résolu, comme assez souvent c'était une minable erreur de syntaxe, j'ai honte :P

 

En fait c'est durant mes tests, à un moment j'avais oublié la parenthèse fermante à la requête, du coup j'avais une erreur MySQL, et un moment je me suis dit que ça venait de la façon que j'avais de concaténer $annee au reste (toujours pas conscient de l'absence de parenthèse - après tout j'en avais toujours une en fin de ligne, inconsciemment ça me suffisait), pour le coup j'avais lâché les apostrophes et avait concaténé avec guillemet et point, sans succès (la parenthèse était pas plus là qu'auparavant :P ), et quand finalement j'ai compris le problème, j'ai remis l'apostrophe, mais omis de virer le point...

Modifié par Phantom-X

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...