Url Script
Résolu RTIG -
jordane45 Messages postés 38472 Date d'inscription Statut Modérateur Dernière intervention - 24 janv. 2021 à 13:03
jordane45 Messages postés 38472 Date d'inscription Statut Modérateur Dernière intervention - 24 janv. 2021 à 13:03
A voir également:
- Url Script
- Url - Guide
- Script vidéo youtube - Guide
- Forum TV & Vidéo
- Mas script - Accueil - Windows
- Forum Windows
15 réponses
bonjour, tu as écrit ce script, et tu ne sais pas où ce fait la vérification du mot de e?
merci d'utiliser les balises de code, comme expliqué ici: https://codes-sources.commentcamarche.sitesdebloques.org/faq/11288-les-balises-de-code
merci d'utiliser les balises de code, comme expliqué ici: https://codes-sources.commentcamarche.sitesdebloques.org/faq/11288-les-balises-de-code
Bonjour,
Avant tout, commence par lire ( et appliquer ) ceci :
https://forums.commentcamarche.sitesdebloques.org/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
et, comme déjà dit par yg_be :
https://codes-sources.commentcamarche.sitesdebloques.org/faq/11288-les-balises-de-code
Ensuite, voici à quoi devrait ressembler ton code
EDIT : Correction du script
Avant tout, commence par lire ( et appliquer ) ceci :
https://forums.commentcamarche.sitesdebloques.org/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
et, comme déjà dit par yg_be :
https://codes-sources.commentcamarche.sitesdebloques.org/faq/11288-les-balises-de-code
Ensuite, voici à quoi devrait ressembler ton code
<?php //démarrage des sessions ( à mettre au tout début de tes pages ) session_start(); //Affichage des erreurs PHP ( à placer avant le reste du code... sur toutes tes pages.. juste après le démarrage des sessions ) error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); // définition des constantes/variables $_a_trouver = 'motdee'; //récupération PROPRE des variables AVANT de les utiliser $session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0; $ = !empty($_POST['']) ? $_POST['']: NULL ; if ($session_count > 4)) { header('Location: http://www.google.com/'); // tu avais oublié un point-virgule exit; // toujours mettre un exit après une redirection } if ($ && $ != $_a_trouver ) { $_SESSION['count'] = $session_count++ ; }else{ //mot de s est bon header('location :URL_de_ta_page_que_tu_veux.php'); exit; } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Texte</title> <style> </style> </head> <body> <h1>Connexion</h1> <form name="form" method="post" action=""> <p> <label for="">Mot de e</label> <input type="" title="Saisissez le mot de e" name="" /> </p> <p> <input type="submit" name="submit" value="Connexion" /> </p> </form> </body> </html>
EDIT : Correction du script
Ah, et si tu veux vérifier sur ta page protégée (si elle est sur le même site...)
il faut que tu modifies le code
par
et que sur la page "protégée" tu mettes au début de celle ci
EDIT : Correction suite à la remarque d'yg_be
il faut que tu modifies le code
if ($ != $) { $_SESSION['count'] = $session_count++ ; }else{ //mot de s est bon header('location :URL_de_ta_page_que_tu_veux.php'); exit; }
par
if ($ != $) { $_SESSION['count'] = $session_count++ ; }else{ //mot de s est bon $_SESSION['autorise'] = 1; header('location :URL_de_ta_page_que_tu_veux.php'); exit; }
et que sur la page "protégée" tu mettes au début de celle ci
<?php //démarrage des sessions ( à mettre au tout début de tes pages ) session_start(); //Affichage des erreurs PHP ( à placer avant le reste du code... sur toutes tes pages.. juste après le démarrage des sessions ) error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); // définition des constantes/variables $ = 'motdee'; //récupération PROPRE des variables AVANT de les utiliser $autorise= !empty($_SESSION['autorise']) ? $_SESSION['autorise']: NULL; //on vérifie si l'utilisateur est bien connecté et autorisé if(!$autorise){ // si pas autorisé ... retour à la page d'accueil header('location: index.php'); // ou autre page.. à toi de modifier exit; } ?>
EDIT : Correction suite à la remarque d'yg_be
Je dois avoir loupé quelque chose j'ai bien suivi le script simplement quand j'heberge la page en question aprés modification? il s'affiche en haut de la page : 4)){ header('Location: http://www.google.com/')exit } if ($ != $) { $_SESSION['count'] = $session_count++ ; }else{ $_SESSION['autorise'] = 1; header('location :http://www.unagiotage.com/UNAGIOTAGE/final.php) exit; } ?>
Es ce que j'ai loupé quelque chose ?
Merci pour le temps accordé.
Es ce que j'ai loupé quelque chose ?
Merci pour le temps accordé.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question <html>
<head>
<meta charset="UTF-8" />
<title> UNAGIOTAGE </title>
</head>
<body>
<?php
session_start();
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
$ = 'motdee';
$session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0;
$ = !empty($_SESSION['']) ? $_SESSION['']: NULL ;
if ($session_count >4)){
header('Location: http://www.google.com/')exit
}
if ($ != $) {
$_SESSION['count'] = $session_count++ ;
}else{
$_SESSION['autorise'] = 1;
header('location :http://www.unagiotage.com/UNAGIOTAGE/final.php)
exit;
}
?>
<!DOCTYPE html>
<html>
<HEAD>
<TITLE>Police du texte</TITLE>
<BODY>
<P><FONT face="Comic Sans MS" color="#000000" size="20">
<h1>Félicitations !</h1>
Bienvenue dans cette première étape de réflexion
Pour allez plus loin une recherche d’indices est nécessaire.
</FONT/p>
<br />
<h1>Connexion</h1>
<form name="form" method="post" action="">
<p>
<label for="">Mot de e</label>
<input type="" title="Saisissez le mot de e" name="" />
</p>
<p>
<input type="submit" name="submit" value="Connexion" />
</p>
</form>
</body>
</html>
<palign="center"><img src="https://image.staticox.com/?url=http%3A%2F%2Fwww.unagiotage.com%2Fimages%2Fbillet.jpg"></p>
<head>
<meta charset="UTF-8" />
<title> UNAGIOTAGE </title>
</head>
<body>
<?php
session_start();
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
$ = 'motdee';
$session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0;
$ = !empty($_SESSION['']) ? $_SESSION['']: NULL ;
if ($session_count >4)){
header('Location: http://www.google.com/')exit
}
if ($ != $) {
$_SESSION['count'] = $session_count++ ;
}else{
$_SESSION['autorise'] = 1;
header('location :http://www.unagiotage.com/UNAGIOTAGE/final.php)
exit;
}
?>
<!DOCTYPE html>
<html>
<HEAD>
<TITLE>Police du texte</TITLE>
<BODY>
<P><FONT face="Comic Sans MS" color="#000000" size="20">
<h1>Félicitations !</h1>
Bienvenue dans cette première étape de réflexion
Pour allez plus loin une recherche d’indices est nécessaire.
</FONT/p>
<br />
<h1>Connexion</h1>
<form name="form" method="post" action="">
<p>
<label for="">Mot de e</label>
<input type="" title="Saisissez le mot de e" name="" />
</p>
<p>
<input type="submit" name="submit" value="Connexion" />
</p>
</form>
</body>
</html>
<palign="center"><img src="https://image.staticox.com/?url=http%3A%2F%2Fwww.unagiotage.com%2Fimages%2Fbillet.jpg"></p>
Je t'ai demandé d'utiliser les BALISES DE CODE pour poster ton code sur le forum;
Rappel : https://codes-sources.commentcamarche.sitesdebloques.org/faq/11288-les-balises-de-code
Rappel : https://codes-sources.commentcamarche.sitesdebloques.org/faq/11288-les-balises-de-code
Donc si j'ai la main sa va etre bon ? En effet lorsque je nomme la page en index.php cela ne marche pas le domaine refuse de ce redirigé
Je ne sais pas chez quel hébergeur tu es ... mais normalement index.php devrait fonctionner pareil qu'un index.html ( au niveau "redirection" )
N'aurais tu pas mis un fichier .htaccess à la racine de ton site qui ferait des redirections ?
Et puis sinon... tu peux toujours faire, dans ton index.html, une redirection automatique vers un index.php
Soit en utilisant un fichier .htaccess ... soit en utilisant un javascript .. soit en utilisant une balise meta ...
Et quand je dis avoir la main ... c'est bien sur la configuration apache/nginx du serveur ...
N'aurais tu pas mis un fichier .htaccess à la racine de ton site qui ferait des redirections ?
Et puis sinon... tu peux toujours faire, dans ton index.html, une redirection automatique vers un index.php
Soit en utilisant un fichier .htaccess ... soit en utilisant un javascript .. soit en utilisant une balise meta ...
Et quand je dis avoir la main ... c'est bien sur la configuration apache/nginx du serveur ...
Oui l'hebergeur c'est IONOS. Aprés je viens de faire un petit script html qui redirige vers la page en question index.php mais j'obtiens un message erreur. Je vais les er pour voir pourquoi les pages php ne s'ouvre pas.
Effectivement y avait un souci par rapport au domaine mais effectivement index.php possible
desormais le message est :
Parse error: syntax error, unexpected ')' in /homepages/31/d847674641/htdocs/UNAGIOTAGE/index.php on line 23
desormais le message est :
Parse error: syntax error, unexpected ')' in /homepages/31/d847674641/htdocs/UNAGIOTAGE/index.php on line 23
<html> <head> <meta charset="UTF-8" /> <title> UNAGIOTAGE </title> </head> <body> <?php session_start(); error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); $ = 'motdee'; $session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0; $ = !empty($_SESSION['']) ? $_SESSION['']: NULL ; if ($session_count >4)){ header('Location: http://www.google.com/')exit; } if ($ != $) { $_SESSION['count'] = $session_count++ ; }else{ $_SESSION['autorise'] = 1; header('location :http://www.unagiotage.com/UNAGIOTAGE/final.php); exit; } ?> <!DOCTYPE html> <html> <HEAD> <TITLE>Police du texte</TITLE> <BODY> <P><FONT face="Comic Sans MS" color="#000000" size="20"> <h1>Félicitations !</h1> Bienvenue dans cette première étape de réflexion Pour allez plus loin une recherche d’indices est nécessaire. </FONT/p> <br /> <h1>Connexion</h1> <form name="form" method="post" action=""> <p> <label for="">Mot de e</label> <input type="" title="Saisissez le mot de e" name="" /> </p> <p> <input type="submit" name="submit" value="Connexion" /> </p> </form> </body> </html> <palign="center"><img src="https://image.staticox.com/?url=http%3A%2F%2Fwww.unagiotage.com%2Fimages%2Fbillet.jpg"></p>
Voici ton code corrigé
Pleins d'erreurs de balises HTML mal placées, non fermées ...
Un oubli de quotes dans une ligne de code php
Le code PHP mal positionné...
bref
Edit: correction ligne 19
Pleins d'erreurs de balises HTML mal placées, non fermées ...
Un oubli de quotes dans une ligne de code php
Le code PHP mal positionné...
bref
<?php //TOUJOURS METTRE CETTE LIGNE AVANT TOUT LE RESTE .. Y COMPRIS LE HTMLL session_start(); // Placer ensuite ces lignes error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); // ET là .. on commence le code PHP // de préférence.. avant le html .. $ = 'motdee'; $session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0; $ = !empty($_SESSION['']) ? $_SESSION['']: NULL ; if ($session_count >4){ header('Location: http://www.google.com/'); exit; } if ($ != $) { $_SESSION['count'] = $session_count++ ; }else{ $_SESSION['autorise'] = 1; header('location: http://www.unagiotage.com/UNAGIOTAGE/final.php'); exit; } ?> <!DOCTYPE html> <html> <head> <title>Police du texte</title> <meta charset='utf-8'> </head> <body> <p> <FONT face="Comic Sans MS" color="#000000" size="20"> <h1>Félicitations !</h1> Bienvenue dans cette première étape de réflexion Pour allez plus loin une recherche d’indices est nécessaire. </FONT> </p> <br /> <h1>Connexion</h1> <form name="form" method="post" action=""> <p> <label for="">Mot de e</label> <input type="" title="Saisissez le mot de e" name="" /> </p> <p> <input type="submit" name="submit" value="Connexion" /> </p> </form> <p align="center"><img src="https://image.staticox.com/?url=http%3A%2F%2Fwww.unagiotage.com%2Fimages%2Fbillet.jpg"></p> </body> </html>
Edit: correction ligne 19
Plus aucun message d'erreur par contre je n'ai plus la demande de mot de e il redirige vers la bonne page directement.
oh purée.. je n'étais pas bien réveillé quand je t'ai écrit le code
donc, à corriger comme ceci
donc, à corriger comme ceci
$_a_trouver = 'motdee'; // modification du nom de la variable $session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0; $ = !empty($_SESSION['']) ? $_SESSION['']: NULL ; if ($session_count >4){ header('Location: http://www.google.com/')exit; } if ($ != $_a_trouver) { // correction du if $_SESSION['count'] = $session_count++ ; }else{ $_SESSION['autorise'] = 1; header('location: http://www.unagiotage.com/UNAGIOTAGE/final.php'); exit; }
:) c'est pas grave c'est super sympas tu était pas obligé. Par contre plus aucun message d'erreur la page est revenu cependant j'ai saisie le mot de e rien ne ce e.
Ajoute un
juste avant le premier IF et montre nous ce qu'il t'affiche.
Assures toi également que ton fichier est bien enregistré en UTF8 (sans BOM )
Voir chapitre de ce lien
https://forums.commentcamarche.sitesdebloques.org/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8
print_r($_POST);
juste avant le premier IF et montre nous ce qu'il t'affiche.
Assures toi également que ton fichier est bien enregistré en UTF8 (sans BOM )
Voir chapitre de ce lien
https://forums.commentcamarche.sitesdebloques.org/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8
<?php session_start(); error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); $_a_trouver = 'argyrocratie'; $session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0; $ = !empty($_SESSION['']) ? $_SESSION['']: NULL ; print_r($_POST); if ($session_count >4){ header('Location: http://www.google.fr'); exit; } if ($ != $_a_trouver) { $_SESSION['count'] = $session_count++ ; }else{ $_SESSION['autorise'] = 1; header('location: http://www.unagiotage.com/UNAGIOTAGE/final.php'); exit; } ?> <!DOCTYPE html> <html> <head> <title>UNAGIOTAGE</title> <meta charset='utf-8'> </head> <body> <p> <FONT face="Comic Sans MS" color="#000000" size="20"> <h1>Félicitations !</h1> Bienvenue dans cette première étape de réflexion Pour allez plus loin une recherche d’indices est nécessaire. </FONT> </p> <br /> <h1>Connexion</h1> <form name="form" method="post" action=""> <p> <label for="">Mot de e</label> <input type="" title="Saisissez le mot de e" name="" /> </p> <p> <input type="submit" name="submit" value="Connexion" /> </p> </form> <p align="center"><img src="https://image.staticox.com/?url=http%3A%2F%2Fwww.unagiotage.com%2Fimages%2Fbillet.jpg"></p> </body> </html>
j'ai l'impression que tu as des espaces qui s'ajoutent..
On va les retirer grâce à un trim
Nouveau code
Celui ci, je l'ai testé.. il fonctionne.
On va les retirer grâce à un trim
Nouveau code
<?php session_start(); error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); $_a_trouver = 'argyrocratie'; $session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0; $ = !empty($_SESSION['']) ? $_SESSION['']: NULL ; //var_dump($_POST); // pour les tests si besoin. if ($session_count >4){ header('Location: http://www.google.fr'); exit; } if ($ && trim($) != trim($_a_trouver)) { $_SESSION['count'] = $session_count++ ; }else{ $_SESSION['autorise'] = 1; header('location: http://www.unagiotage.com/UNAGIOTAGE/final.php'); exit; } ?>
Celui ci, je l'ai testé.. il fonctionne.
Donc on remplace la ligne 12 par celle que tu me dis mais il m'affiche toujours pareil.
Parse error: syntax error, unexpected ';' in /homepages/31/d847674641/htdocs/UNAGIOTAGE/index.php on line 23
Parse error: syntax error, unexpected ';' in /homepages/31/d847674641/htdocs/UNAGIOTAGE/index.php on line 23
Bon,
cette fois j'ai pris le temps de tester le script
cette fois j'ai pris le temps de tester le script
<?php //Démarrage des sessions session_start(); //affichage des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); // variable contenant le à trouver $_a_trouver = 'argyrocratie'; //récupération PROPRE des variables AVANT de les utiliser $session_count = !empty($_SESSION['count']) ? $_SESSION['count']: 0; $ = !empty($_POST['']) ? $_POST['']: NULL ; //juste pour les tests.. tu pourras le retirer ensuite var_dump($_SESSION); //--------------------------------// //DEBUT DU SCRIPT //--------------------------------// if ($session_count >4){ $_SESSION['autorise'] = 0; header('Location: http://www.google.fr'); exit; } if ($ && trim($) != trim($_a_trouver)) { $_SESSION['count'] = $session_count++ ; }else if(trim($) == trim($_a_trouver)){ $_SESSION['autorise'] = 1; header('location: http://www.unagiotage.com/UNAGIOTAGE/final.php'); exit; } ?>