Salut à toutes et tous !
Je débute et je rame grave !
C'est pas faute de chercher mais encore faut-il mettre les bons mots-clés... et mes recherches demeurent infructueuses
Je m'explique :
J'ai une liste déroulante dans un formulaire qui permet de choisir une quantité de 1 à 10.
Je contrôle avec Javascript que la valeur de ce champ de formulaire ne soit pas supérieure au stock disponible en incluant la valeur dynamique renvoyée par php.
La mauvaise surprise est que si la fonction php indiquant le stock disponible renvoie une valeur de 8, et que je commande 10, je n'ai pas de message d'alerte !
Le système ne semble prendre en compte que le premier caractère de la chaîne, soit 1, qui est inférieur à 8.
J'ai essayé avec 08 et là ça marche, mais...
Si le stock est de 110, et que je commande 9, le message d'alerte apparaît car 9 est supérieur au premier caractère de la chaîne soit 1 (et à 0 si je met 0 devant cette variable de stock).
Voilà mon script :
<script language="javascript">
function champsok()
{
if (document.formulaire.Date.value=="") {
alert("Veuillez sélectionner une DATE valide, svp !");
return false;
}
else if (document.formulaire.NbPlaces.value=="") {
alert("Veuillez indiquer le NOMBRE DE PLACES souhaitées !");
return false;
}
else if ((document.formulaire.Date.value=="2005-02-05")&
amp;&(document.formulaire.NbPlaces.value>"
<?
// information pour la connection à la DB
$host = 'host';
$user = 'user';
$pass = 'pass';
$db = 'db';
// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
$a = 80;
$resultat=mysql_query ("select sum(NbPlaces) as somme_totale from location where Date='2005-02-05'") or die ("Requete impossible");
{
echo ($a - mysql_result($resultat,$i,somme_totale));
}
?>
"))
{
alert("NOMBRE DE PLACES trop élevé !\n\nIl reste seulement
<?
// information pour la connection à la DB
$host = 'localhost';
$user = 'user';
$pass = 'pass';
$db = 'db';
// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
$a =80;
$resultat=mysql_query ("select sum(NbPlaces) as somme_totale from location where Date='2005-02-05'") or die ("Requete impossible");
{
echo ($a - mysql_result($resultat,$i,somme_totale));
}
?>
place(s).\nEt vous vouliez réserver " + document.formulaire.NbPlaces.value + " places.\n");
document.formulaire.NbPlaces.focus();
return false;
}
return true;
}
//-->
</script>Le script contiendra plusieurs conditions associées ((condition1)&&(condition2)) puisque les stocks varient selon les dates.
Exemple :
2005-01-28 stock=18
2005-01-29 stock=54
etc...
Y a-t-il un moyen de simplifier mon script ? Ou la méthode employée vous semble conforme ?
(Pourtant, j'ai lu "Javascript pour les Nuls"... mais j'ai peut-être même pas le niveau ! M'enfin... je m'y emploie

Merci d'avance pour le coup d'oeil... et pour le coup de main...