Appel de fonctions javascript dans php
Résolu/Fermé
A voir également:
- Appel de fonctions javascript dans php
- Appel anonyme - Guide
- Telecharger javascript - Télécharger - Langages
- Nommez une application d'appel vidéo ou de visioconférence - Guide
- Comment reecouter un appel sur iphone - Forum Huawei
- Appel annulé iphone - Forum Mobile
4 réponses
jordane45
Messages postés
38289
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 novembre 2024
4 703
14 mai 2019 à 10:05
14 mai 2019 à 10:05
Bonjour,
Déjà, merci d'utiliser correctement les balises de code à l'avenir.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Ensuite :
<<Le texte.>> .. quel texte ?
<<en haut de ma page>> ... où ça exactement ?
<< lorsque je sors de php dans mon message >> .. tu peux traduire ?
PS: Au passage, au lieu d'écrire :
il est préférable de faire :
ou encore
Déjà, merci d'utiliser correctement les balises de code à l'avenir.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Ensuite :
le texte s'affiche en haut de ma page lorsque je sors de php dans mon message !!
<<Le texte.>> .. quel texte ?
<<en haut de ma page>> ... où ça exactement ?
<< lorsque je sors de php dans mon message >> .. tu peux traduire ?
PS: Au passage, au lieu d'écrire :
if ($trouve <> true){
il est préférable de faire :
if ($trouve != true){
ou encore
if (!$trouve ){
jordane45
Messages postés
38289
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 novembre 2024
4 703
14 mai 2019 à 20:40
14 mai 2019 à 20:40
Pourrais tu poster l'intégralité de ton code ( en UN seul morceau si il est dans le même fichier ) ou en indiquant, pour chaque fichier, son nom....
car là.. on a un peu de mal à savoir où se trouve ton code php par rapport à ton code html... ni même où se situe le code js ....
car là.. on a un peu de mal à savoir où se trouve ton code php par rapport à ton code html... ni même où se situe le code js ....
Pour cette page j'ai 3 fichiers : php, scripts et css
Le fichier logging.php comprend pour le moment 3 partie :
- connexion classique qui fonctionne correctement
- première connexion où je demande le mail et un mot de passe ( le nom et prénom sont déjà renseignés dans un fichier membres.txt)
- mot de passe oublié la partie que je ne parviens pas à finaliser.
donc dans logging.php
dans le fichier style.css
dans le fichier scripts.js
pour info dans mon fichier mail.php. J'ai repris ce fichier d'un autre site que j'avais fait. Il fonctionnait
Cette fois tout y est !!
Merci d'avance
Le fichier logging.php comprend pour le moment 3 partie :
- connexion classique qui fonctionne correctement
- première connexion où je demande le mail et un mot de passe ( le nom et prénom sont déjà renseignés dans un fichier membres.txt)
- mot de passe oublié la partie que je ne parviens pas à finaliser.
donc dans logging.php
$message3 = ""; //****************************************************** // Mot de passe oublié on demande l'adresse mail pour envoyer le nouveau mot de passe //****************************************************** if (isset($_POST['passOublie'])) $passOublie = $_POST['passOublie']; else $passOublie = ""; //** controle de l'adresse mail if (!empty($_POST['passOublie'])){ $adresse_mail=htmlentities($_POST['passOublie']); if(!VerifierAdresseMail($adresse_mail)){ $message = "L'adresse internet n'est pas valide"; } } if (isset($_POST['envoyer'])){ $nom = 'Duval''; $prenom = 'Martin'; $trouve = ''; if (empty($message)){ // changer le mot de passe puis sha1 $newpassword =""; function motDePasse($longueur = 5) { // par défaut, on affiche un mot de passe de caractères // chaine de caractères qui sera mis dans le désordre: $Chaine = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; // 62 caractères au total // on mélange la chaine avec la fonction str_shuffle(), propre à PHP $Chaine = str_shuffle($Chaine); // ensuite on coupe à la longueur voulue avec la fonction substr(), propre à PHP aussi $Chaine = substr($Chaine,0,$longueur); // ensuite on retourne notre chaine aléatoire de "longueur" caractères: return $Chaine; } // Appel à la fonction: $newpassword = motDePasse(10); // retourne un mot de passe avec 10 caractères (lettres et numéros) // $newpassword = sha1($newpassword); // codifie le mot de passe //changer le mot de passe dans le fichier des membres $membres = 'fr/membres.txt'; $temporaire ='fr/membres1.txt'; $temporairea = fopen($temporaire,'a'); $lines = file('fr/membres.txt'); foreach($lines as $n => $line){ $champ = explode(";",$line); $champ0 = $champ[0]; $champ1 = $champ[1]; $champ2 = $champ[2]; // tester si l'adresse mail est la même que celle renseignée if (($champ[2] == $passOublie)) { $newline = $champ0.";" .$champ1.';'.$champ2.';'.$newpassword.';'; $newline = $newline."\r\n"; fwrite($temporairea,$newline); $_SESSION['utilisateur'] = $champ1; //pour affichage sur la page index $trouve = true; } else { $newline = $champ[0] .';' . $champ[1] .';'.$champ[2].';'.$champ[3].';'; $newline = $newline."\r\n"; fwrite($temporairea,$newline); } } fclose($temporairea); // unlink($membres); // rename($temporaire,$membres); if ($trouve != true){ $message3 = "Votre adresse mail n'a pas été trouvée.<br />"; } else { // envoyer un mail avec le nouveau mot de passe et demander de le changer // include('fr/mail.php'); $message2 = "Un message vient de vous être envoyé. Vérifier votre dossier des courriers indésirables."; } } } ?> <!---------------------------------> <!--- Affichage pour l'envoi d'un mot de passe ---> <?php if (!empty($message3)){ echo "<p style='text-align:center; font-weight:bold; color:red;'> $message3 <a href ='#afficher' class='afficher'>Recommencez</a> ou cliquez <a href ='#afficher1' class='afficher1'>ici</a>"; // echo "<p style='text-align:center; font-weight:bold; color:red;'> $message3 // <span style='color:blue; cursor:pointer;' onclick='javascript:montrer(\'divMotOublie\');'>Recommencez</span> // ou cliquez <span style='color:blue; cursor:pointer;' onclick='javascript:voir(\'divMotOublie\',\'divpassoublie\');'>ici</span>"; } ?> </p> <div id="divMotOublie" > <FORM NAME="log" ACTION="index.php?page=connexion" METHOD="POST"> <p><br />Veuillez saisir votre adresse mail<input type = "text" value = "<?php echo $passOublie;?>" name = "passOublie" style="margin-left:2em;width:18.5em;"><br /> </p><input name="envoyer" type="submit" value="Envoyer" style="width:7em; cursor:pointer;"> </FORM> <div id="divpassoublie" style="display:none;"> ici je veux mettre un input pour demander le nom et un pour le prénom plus un bouton de validation </div> </div>
dans le fichier style.css
/* mot de passe oublié */ #divMotOublie { text-align:center; display:none; } #afficher:target#divMotOublie { display:inline; }
dans le fichier scripts.js
function montrer(id){ /alert(id);/ document.getElementById(id).style.display = "inline"; } function cacher(id){ document.getElementById(id).style.display = "none"; } function voir(id,id1){ document.getElementById(id).style.display = "inline"; document.getElementById(id1).style.display = "inline"; }
pour info dans mon fichier mail.php. J'ai repris ce fichier d'un autre site que j'avais fait. Il fonctionnait
<?php $to = $passOublie; $subject = 'Nouveau mot de passe'; $msg = 'Bonjour '.$prenom.' '.$nom. '<p> Ce message vous est envoyé par le Comité de Jumelage de Troissy<br /> Votre nouveau mot de passe est : '.$newpassword.'.<br /> Nous vous recommandons de vous connecter rapidement pour changer votre mot de passe.</p> Cliquez sur le lien ci-dessous ou copiez le dans la barre d\'adresse de votre navigateur pour modifier votre mot de passe.<br /> <a href = "http://www.associationculturelletroissybouquigny.fr/index.php?page=log">www.associationculturelletroissybouquigny.fr/index.php?page=log</a> <p>Comité de Jumelage de Troissy</p>'; $headers = 'From: Association_Culturelle_Troissy_Bouquigny <***@***>'."\r\n"; $headers .= "Content-Type: text/html; charset=\"UTF-8\""; mail($to, $subject, $msg, $headers); ?>
Cette fois tout y est !!
Merci d'avance
jordane45
Messages postés
38289
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 novembre 2024
4 703
14 mai 2019 à 21:38
14 mai 2019 à 21:38
Non tout n'y est pas... quand je dis CODE COMPLET ... c'est le CODE COMPLET....
Avec le head, le body du html ... le lien vers les fichiers css et js ....
et puis dans ton fichier login.php .. je vois déjà une erreur à la ligne 15 ... une quote en trop....
Avec le head, le body du html ... le lien vers les fichiers css et js ....
et puis dans ton fichier login.php .. je vois déjà une erreur à la ligne 15 ... une quote en trop....
la ligne 15 et la ligne 16 seront supprimées.Je les avais mises pour tester mais je n'ai pas encore utilisé cette partie.
le fichier index.php
le fichier index.php
<?php session_start(); //------------------ // déconnexion du site if (isset($_GET['deconnexion'])){ unset($_SESSION['utilisateur']); unset($_SESSION['id_utilisateur']); session_destroy(); } // ----------------- // langues disponibles sur le site if(empty($_SESSION['langues_array']) ) { $_SESSION['langues_array'] = ['fr','de']; // français (principale) / allemand (si tu veux ajouter des langues, il suffira de l'ajouter ici) } // ----------------- // changement de langue if(empty($_SESSION['langue']) ) { $_SESSION['langue'] = $_SESSION['langues_array'][0]; // langue par défaut } if(isset($_GET['langue'])) // (reçu via URL) { $_SESSION['langue'] = $_GET['langue']; } elseif(isset($_POST['langue'])) // (reçu via form) { $_SESSION['langue'] = $_POST['langue']; } if( !in_array($_SESSION['langue'],$_SESSION['langues_array']) ) { $_SESSION['langue'] = $_SESSION['langues_array'][0]; // langue par défaut } // ----------------- ?> <!DOCTYPE HTML> <html> <head> <title>Jumelage Troissy Partenheim</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no" /> <meta name="description" content="Jumelage, Troissy, Partenheim, Champagne"/> <meta name="keywords" content="Jumelage, Champagne, Troissy, Bouquigny, Dormans, 51, 51700, Partenhiem, Allemagne "/> <meta name="Robots" content="index, follow, all"/> <meta name="Revisit-after" content="5 days"/> <link rel="icon" type="image/ico" href="images/10199.ico" /> <link rel="stylesheet" type="text/css" href="css/style.css" /> <link rel="stylesheet" type="text/css" href="css/style_charte.css" /> <link rel="stylesheet" type="text/css" href="css/style_rencontres.css" /> <link rel="stylesheet" type="text/css" href="css/medias.css" /> <script type="text/javascript" src="scripts/scripts.js"></script /> </head> <body> <div id="global"> <div> <?php if ($_SESSION['langue'] == 'fr') { echo '<div id="headerF"> <div id="divFlagLeft"> <FORM ACTION="" METHOD="post"> <input type="hidden" name="langue" value="de" /> <input type="image" alt="de" src="images/deutch-flag.jpg" id="imgFlagD" /> </FORM> </div> <div id= "divFlagRight"> <FORM ACTION="" METHOD="post"> <input type="hidden" name="langue" value="fr" /> <input type="image" alt="fr" src="images/french-flag.jpg" id="imgFlagF"; />'; if (isset($_SESSION['utilisateur'])){ echo $_SESSION['utilisateur']; echo " <br />"; echo "<a href='index.php?deconnexion' >déconnexion</a> </p>"; } else { echo '<a href="index.php?page=connexion">connexion</a> '; } echo '</FORM> </div> <span id="spanbandeau">Jumelage <br />Troissy ~ Partenheim </span> </div>'; } else { echo '<div id="headerD"> <div id="divFlagLeft"> <FORM ACTION="" METHOD="post"> <input type="hidden" name="langue" value="fr" /> <input type="image" alt="de" src="images/french-flag.jpg" id="imgFlagD" /> </FORM> </div> <div id= "divFlagRight"> <FORM ACTION="" METHOD="post"> <input type="hidden" name="langue" value="de" /> <input type="image" alt="fr" src="images/deutch-flag.jpg" id="imgFlagF"; /> Verbindung <br />mein name <br />Unterbrechung </FORM> </div> <span id="spanbandeau">Partnerschaft <br />Partenheim ~ Troissy </span><br /> </div>'; } ?> </div> <?php // affichage du menu if ($_SESSION['langue']=='de') { ?> <div id="menu"> <ul class="niveau1"> <li><a href="index.php?page=accueil">Homepage</a></li> <li><a href="index.php?page=historique">Historiche</a></li> <li><a href="index.php?page=charte">Chartern</a></li> <li class="sousmenu"><a href="#">Treffen</a> <ul class="niveau2"> <li class="sousmenu"><a href="index.php?page=2018"> Jahr 2018</a></li> <li><a href="index.php?page=2017">Jahr 2017</a></li> <li><a href="index.php?page=2016">Jahr 2016</a></li> <li><a href="index.php?page=annees_anterieures">Vorjahren</a></li> </ul> </li> <li><a href="index.php?page=contact">KontaKt</a></li> <li class="sousmenu"><a href="">Verschiedene</a> <ul class="niveau2"> <li class="sousmenu"><a href="index.php?page=carte-partenheim">Situer Partenheim</a></li> <li><a href="index.php?page=carte-troissy">Situer Troissy</a></li> <li><a href="index.php?page=comite">PartnerschaftKomitees</a></li> <li><a href="index.php?page=vie">Gemeindeleben sei nes</a></li> </ul> </li> </ul> </div> <?php } else { ?> <div id="menu"> <ul class="niveau1"> <li><a href="index.php?page=accueil">Accueil</a></li> <li><a href="index.php?page=historique">Historique</a></li> <li><a href="index.php?page=charte">Charte</a></li> <li class="sousmenu"><a href="#">Les rencontres</a> <ul class="niveau2"> <li class="sousmenu"><a href="index.php?page=2018">année 2018</a></li> <li><a href="index.php?page=2017">année 2017</a></li> <li><a href="index.php?page=2016">année 2016</a></li> <li><a href="index.php?page=annees_anterieures">années antérieures</a></li> </ul> </li> <li><a href="index.php?page=contact">Contacts</a></li> <li class="sousmenu"><a href="">Divers</a> <ul class="niveau2"> <li class="sousmenu"><a href="index.php?page=carte-troissy">Situer Troissy</a></li> <li><a href="index.php?page=carte-partenheim">Situer Partenheim</a></li> <li><a href="index.php?page=comite">Comité du jumelage</a></li> <li><a href="index.php?page=vie">Vie communale</a></li> </ul> </li> </ul> </div> <?php } ?> <div> <!--- affichage des pages ---!> <div id="conteneur" class="clearfix"> <?php if (!isset($_GET['page'])) $page= 'accueil'; else $page= $_GET['page']; switch($page){ case 'accueil': include ($_SESSION['langue'].'/accueil.php');break; case 'historique': include ($_SESSION['langue'].'/historique.php');break; case 'connexion': include ($_SESSION['langue'].'/logging.php');break; case 'charte': include ($_SESSION['langue'].'/charte.php');break; case 'signature_charte': include ('images/rencontres/annees_anterieures/1988/signature_charte.php');break; case 'charte': include ($_SESSION['langue'].'/charte.php');break; case 'contact': include ($_SESSION['langue'].'/contact.php');break; case 'annees_anterieures': include ($_SESSION['langue'].'/rencontres/annees_anterieures.php');break; case '2018': include ($_SESSION['langue'].'/rencontres/2018.php');break; case '2017': include ($_SESSION['langue'].'/rencontres/2017.php');break; case '2016': include ($_SESSION['langue'].'/rencontres/2016.php');break; case '2015': include ($_SESSION['langue'].'/rencontres/2015.php');break; case 'carte-troissy': include ($_SESSION['langue'].'/situer_troissy.php');break; case 'carte-partenheim': include ($_SESSION['langue'].'/situer_partenheim.php');break; case 'mentions': include ($_SESSION['langue'].'/mentions_legales.php');break; } ?> </div> <!--- affichage des blasons ---!> <?php include ($_SESSION['langue'].'/blasons.php'); ?> <!--- affichage des annonces ---!> <div id="annonces"> <?php include ($_SESSION['langue'].'/annonces.php'); ?> </div> </div> <!--- pied de page ---!> <div id="pied_page"><br /> <p> <a href ="index.php?page=plan" class="pied">Plan du site</a> | <a href="index.php?page=mentions" style="color:#FFF;">Mentions légales</a><br /><br /> </p> </div> </div> </body> </html>
jordane45
Messages postés
38289
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 novembre 2024
4 703
14 mai 2019 à 23:31
14 mai 2019 à 23:31
Dans un fichier .php j'ai collé ton code
Et... il fonctionne...
Donc si tu as une erreur.. il faudrait déjà regarder dans la console du navigateur (lorsque tu cliques sur tes "boutons" ) si rien ne s'affiche.
Eventuellement, faire comme moi et ajouter, dans ton code js, des console.log
<?php $message3 = "Erreur"; if (!empty($message3)){ echo "<p style='text-align:center; font-weight:bold; color:red;'> $message3 <span style='color:blue; cursor:pointer;' onclick='montrer(\"divMotOublie\");'>Recommencez</span> ou cliquez <span style='color:blue; cursor:pointer;' onclick='voir(\"divMotOublie\",\"divpassoublie\");'>ici</span>"; } ?> </p> <div id="divMotOublie" > <FORM NAME="log" ACTION="index.php?page=connexion" METHOD="POST"> <p><br />Veuillez saisir votre adresse mail<input type = "text" value = "<?php echo $passOublie;?>" name = "passOublie" style="margin-left:2em;width:18.5em;"><br /> </p><input name="envoyer" type="submit" value="Envoyer" style="width:7em; cursor:pointer;"> </FORM> <div id="divpassoublie" style="display:none;"> ici je veux mettre un input pour demander le nom et un pour le prénom plus un bouton de validation </div> </div> <script type="text/javascript"> function montrer(id){ //alert(id); document.getElementById(id).style.display = "inline"; } function cacher(id){ document.getElementById(id).style.display = "none"; } function voir(id,id1){ console.log(id,id1); document.getElementById(id).style.display = "inline"; document.getElementById(id1).style.display = "inline"; } </script>
Et... il fonctionne...
Donc si tu as une erreur.. il faudrait déjà regarder dans la console du navigateur (lorsque tu cliques sur tes "boutons" ) si rien ne s'affiche.
Eventuellement, faire comme moi et ajouter, dans ton code js, des console.log
jordane45
Messages postés
38289
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 novembre 2024
4 703
14 mai 2019 à 23:33
14 mai 2019 à 23:33
Tu peux aussi nous fournir le code "généré" ( tu affiches la page voulue dans les conditions qui permettent d'afficher ton message3 ...dans ton navigateur, puis tu en affiches la source (en général avec le raccourci clavier CTRL+U ) puis tu nous le colles sur le forum )
Bonjour Jordane,
Mon code ne fonctionnait toujours pas !!
Donc j'ai comparé les 2 code et voilà où était mes erreurs. J'ai corrigé et ça marche !!
j'avais :
au lieu de (ton code)
L'erreur c'était ' ' au lieu de " " pour l'id de l'appel de la fonction script.
Un grand merci pour ton aide et ta patience. Je vais pouvoir à l'étape suivante.
Mon code ne fonctionnait toujours pas !!
Donc j'ai comparé les 2 code et voilà où était mes erreurs. J'ai corrigé et ça marche !!
j'avais :
<span style='color:blue; cursor:pointer;' onclick='javascript:montrer(\'divMotOublie\');'>Recommencez</span> ou cliquez <span style='color:blue; cursor:pointer;' onclick='javascript:montrer(\(divPassOublie\');'>ici</span>";
au lieu de (ton code)
<span style='color:blue; cursor:pointer;' onclick='javascript:montrer(\"divMotOublie\");'>Recommencez</span> ou cliquez <span style='color:blue; cursor:pointer;' onclick='javascript:montrer(\"divPassOublie\");'>ici</span>";
L'erreur c'était ' ' au lieu de " " pour l'id de l'appel de la fonction script.
Un grand merci pour ton aide et ta patience. Je vais pouvoir à l'étape suivante.
14 mai 2019 à 11:10
Pour les balises de code c'est noté.
C'est noté aussi pour
Dans le message ci-dessous je sors du code php
le premier appel à la fonction script fonctionne, la div s'affiche
mais cet appel avec 2 arguments ne fonctionne pas, aucune div ne s'affiche
la fonction script avec les 2 arguments
Merci d'avance.
14 mai 2019 à 11:43
Car en effet... ça affiche le texte...là où se trouve le code dans ta page....
Et pour ce qui est du fonctionnement de ton Javascript... il faudrait regarder dans la console de ton navigateur si tu n'as pas d'erreur.
Dans l'idéal, faudrait nous poster le code COMPLET de ta page
14 mai 2019 à 11:47
14 mai 2019 à 11:55
14 mai 2019 à 13:26
Je crois que c'est le message qui n'est pas affiché là où il devraite être !!