pb dans un while - PHP - Programmation
Marsh Posté le 06-07-2004 à 10:32:20
Je te rapelle que
- PHP est évalué au niveau du serveur
- JS est évalué chez le client.
PHP ne peut donc pas te renvoyer une alert("ok" ) dans la boucle while. Pour PHP document.form.ajout...value est une simple chaine de caractère sans autre valeur.
Marsh Posté le 06-07-2004 à 10:39:40
ok merci
mais ce qui me pose pb dans ce que te dis par rapport a mon pb c ke j'arrive a faire une alert($num_rang->numNoRang) et une alert(document...value)
ne serait-il pas possible de faire du cast en forcant les deux types pour en faire des nombres puis de les comparer ??
Marsh Posté le 06-07-2004 à 10:47:55
alert($num_rang->numNoRang) ne peut pas fonctionner
alert() => niveau JS
$num_rang->numNoRang => niveau PHP
($num_rang->numNoRang)==(document.forms.form_ajout_serie.rang.value) impossible à comparer car les deux n'existent pas en même temps
Vérifie le code généré par PHP, c'est en analysant celui là que tu pourras comprendre comment il faut corriger ton script
Marsh Posté le 06-07-2004 à 10:59:36
évite également de mettre des caractères accentués dans tes tables/champs
Marsh Posté le 06-07-2004 à 11:04:17
T509 a écrit : alert($num_rang->numNoRang) ne peut pas fonctionner |
Il faut vraiment que tu ailles lire des tutos acquérir les bases de PHP
Marsh Posté le 06-07-2004 à 11:06:56
ok mais où trouver des tutos correctes qui expliquent bien ces nuances là....
j'ai le bouquain d'Oreilly pratique de php et MySQL mais il en parle pas trop
Marsh Posté le 06-07-2004 à 11:07:57
c'est quand même les bases. tu as du raté l'introduction à l'acrhitecture clent serveur
Marsh Posté le 06-07-2004 à 11:16:02
Mais il est expliqué page 34 de ce bouquin que javascript permet de faire de la programmation au niveau du client
Il faut que tu saches que le web fonctionne de manière "déconnectée". C'est à dire que les information sont envoyées et on ne s'en occupe plus. Il n'y a pas de lien vivace entre ta page web sur le serveur et celle qui est affichée chez ton visiteur.
La seule interaction possible entre javascript et PHP est lors de la soumission d'onformations au serveur par la commande .submit.
Comparer des variables JS avec des variables PHP n'a pas de sens. C'est comme si tu voulais actuellement comparer les qualités en vol d'un Airbus A380 et d'un Boeing 747-400. C'est impossible puisque le premier n'existe pas encore.
Va faire un tour sur phpdebutant.org, phpteam.net, ... et relis ton bouquin.
Marsh Posté le 06-07-2004 à 10:24:04
salut à tous j'ai un petit soucis:
voici ce que je fait
<script langage=javascript>
...
<?
$res = $bd->execRequete("select distinct numNoRang from série where cléParcelle ='".$parcelle."'" );
echo "alert(\"Le num de rang est \"+document.forms.form_ajout_serie.rang.value);";
while ($num_rang = $bd->objetSuivant($res))
{
echo "alert(\"num ds bdd :\"+$num_rang->numNoRang);";
echo "alert(\"val du champ rang = \"+document.forms.form_ajout_serie.rang.value);";
if(($num_rang->numNoRang)==(document.forms.form_ajout_serie.rang.value))
{
echo "alert(\"ok\" );";
}
}
?>
...
</script>
le pb est que je ne rentre jamais dans mon if alors que $num_rang->numNoRang me renvoit {1,2,3} et document.form.ajout...value vaut 1
donc théoriquement le while devrait entrer dans ma boucle au premier tour et donc afficher le message javascript alert("ok" );