Insérer Javascipt dans PHP
Mondy'
-
pyschopathe Messages postés 1974 Date d'inscription Statut Membre Dernière intervention -
pyschopathe Messages postés 1974 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je rencontre un petit problème s'opposant à ma découverte de la programmation^^ Je souhaitais en effet utiliser la fonction alert(' ') seulement si quelques conditions, définies en PHP, ne sont pas remplies.
Le plus simple est de commencer par vous donner le code (simplifié) :
<?php
if(machin bidule)
{
...
...
}
else
{
echo"<script type=\"text/javascript\">";
echo"alert('Blablabla')";
echo"</script>";
}
?>
Tout cela sur un livre d'or : si les champs pseudo et message ne sont pas vides et que le champ "vérif" est égal à 5 (un bidouillage maison pour éviter les captchas : je demande combien font 2+3) alors le script s'éxecute. Or personne ne me prenait au sérieux avec mon 2+3 Je voulais donc, si ces conditions ne sont pas vérifiées, afficher une alert en javascipt histoire de me moquer un peu des boulets pas capable de faire une addition (bon ou plutôt de calmement leur expliquer que ce n'était pas une blague ^^).
Mais ce code ne génère aucune alert si les conditions ne sont pas remplies (comme avant quoi). Si cela peut vous aider, voilà l'adresse où est actuellement ce code : http://www.tpe-ecocitoyen.fr/classe/livreor.php .
J'avais également pensé à faire
<?php
if(machin bidule)
{
...
...
}
else
{
?>
<script type="text/javascript">
alert('Blablabla')
</script>
<?php
}
?>
Mais là le problème était inverse : mon idée géniale fonctionnait à merveille au détail près qu'elle s'activait dès l'ouverture de la page -> L' alert s'activait dès l'arrivée sur la page (mais s'activait ensuite correctement si les conditions n'étaient pas remplies, tout de même).
Bon et en plus ce qui renforce ma turlupination c'est que dans les deux cas, si je demande à afficher le code source de la page (reçu par le navigateur) eh bien les deux se ressemblent drôlement : je ne leur trouve pas de différence -_-" (la preuve que mes echo fonctionnent normalement...)
Voilà mon problème, merci si vous avez lu jusqu'ici ^^ Je précise que je suis débutant, cela risque d'être une erreur toute bête (j'ai déjà pensé à bien vérifier les points-virgules ^^) ou alors monumentale, au choix (il est peut-être interdit d'insérer du javascript dans du PHP? Ce serait triste).
Merci beaucoup, et bonne journée.
je rencontre un petit problème s'opposant à ma découverte de la programmation^^ Je souhaitais en effet utiliser la fonction alert(' ') seulement si quelques conditions, définies en PHP, ne sont pas remplies.
Le plus simple est de commencer par vous donner le code (simplifié) :
<?php
if(machin bidule)
{
...
...
}
else
{
echo"<script type=\"text/javascript\">";
echo"alert('Blablabla')";
echo"</script>";
}
?>
Tout cela sur un livre d'or : si les champs pseudo et message ne sont pas vides et que le champ "vérif" est égal à 5 (un bidouillage maison pour éviter les captchas : je demande combien font 2+3) alors le script s'éxecute. Or personne ne me prenait au sérieux avec mon 2+3 Je voulais donc, si ces conditions ne sont pas vérifiées, afficher une alert en javascipt histoire de me moquer un peu des boulets pas capable de faire une addition (bon ou plutôt de calmement leur expliquer que ce n'était pas une blague ^^).
Mais ce code ne génère aucune alert si les conditions ne sont pas remplies (comme avant quoi). Si cela peut vous aider, voilà l'adresse où est actuellement ce code : http://www.tpe-ecocitoyen.fr/classe/livreor.php .
J'avais également pensé à faire
<?php
if(machin bidule)
{
...
...
}
else
{
?>
<script type="text/javascript">
alert('Blablabla')
</script>
<?php
}
?>
Mais là le problème était inverse : mon idée géniale fonctionnait à merveille au détail près qu'elle s'activait dès l'ouverture de la page -> L' alert s'activait dès l'arrivée sur la page (mais s'activait ensuite correctement si les conditions n'étaient pas remplies, tout de même).
Bon et en plus ce qui renforce ma turlupination c'est que dans les deux cas, si je demande à afficher le code source de la page (reçu par le navigateur) eh bien les deux se ressemblent drôlement : je ne leur trouve pas de différence -_-" (la preuve que mes echo fonctionnent normalement...)
Voilà mon problème, merci si vous avez lu jusqu'ici ^^ Je précise que je suis débutant, cela risque d'être une erreur toute bête (j'ai déjà pensé à bien vérifier les points-virgules ^^) ou alors monumentale, au choix (il est peut-être interdit d'insérer du javascript dans du PHP? Ce serait triste).
Merci beaucoup, et bonne journée.
A voir également:
- Insérer Javascipt dans PHP
- Insérer une vidéo dans powerpoint - Guide
- Insérer signature word - Guide
- Insérer liste déroulante excel - Guide
- Insérer sommaire word - Guide
- Insérer espace insécable word - Guide
2 réponses
Bonjour
A priori tes deux fragments de code devraient fonctionner...
A mon avis, ta condition est mal écrite.
Tu pourrais nous poster la condition avec les arguments réels ?
A priori tes deux fragments de code devraient fonctionner...
A mon avis, ta condition est mal écrite.
Tu pourrais nous poster la condition avec les arguments réels ?
L'erreur est monumentalement toute bête : PHP est côté serveur, JS côté client, donc le code html généré par php sera interprété par le client "statiquement", tandis qu'un code JS permet d'apporter le dynamisme que tu souhaites.
Pour arriver à tes fins : deux solutions. La première est d'abandonner le JS et de faire la vérification côté serveur dans le script de réception du formulaire, et d'afficher un message d'erreur dans la page retournée. La seconde est de créer une fonction JS qui sera appelée à la soumission du formulaire (onsubmit="alert('blahblah'); return true;"). Retiens tout de même que tu ne dois pas te reposer sur le JS pour effectuer des contrôles importants : en effet, l'utilisateur peut parfaitement l'avoir désactivé, rendant caduques les vérifications prévues...
Pour arriver à tes fins : deux solutions. La première est d'abandonner le JS et de faire la vérification côté serveur dans le script de réception du formulaire, et d'afficher un message d'erreur dans la page retournée. La seconde est de créer une fonction JS qui sera appelée à la soumission du formulaire (onsubmit="alert('blahblah'); return true;"). Retiens tout de même que tu ne dois pas te reposer sur le JS pour effectuer des contrôles importants : en effet, l'utilisateur peut parfaitement l'avoir désactivé, rendant caduques les vérifications prévues...