Pages : 1
Discussion fermée
#1 Le 02/10/2008, à 19:18
- Skippy le Grand Gourou
[Résolu] Login intermédiaire en PHP
Salut,
Je suis en train de faire une page dans laquelle l'utilisateur rentre des infos dans une base de données. J'aimerais y mettre une contrainte : s'il s'agit de l'admin (c'est moi), alors les données vont direct dans la base, sinon elles lui (me) sont envoyées par mail. Pour que ce soit léger et pratique à utiliser, le formulaire contient une case « je suis l'admin » à cocher, et j'aimerais que si elle est cochée l'utilisateur reçoive un prompt de login. Donc en gros :
formulaire
/ \
si admin si pas admin
| |
login envoi mail
|
envoi
database
Je n'ai pas de problème à coder les différentes parties, le seul souci que j'ai c'est au niveau du login : comment faire en sorte que le script PHP utilise une étape intermédiaire (le login) ? Un peu dans le genre de cin en C++, ou de read en bash/sh, que le script s'arrête pour attendre une entrée (je voudrais faire un truc simple, comme il n'y a qu'un seul admin, genre juste comparer une somme md5 codée en dur dans le script PHP, mais bon c'est pas le problème).
Je sais pas si c'est clair ?
Merci.
Dernière modification par Skippy le Grand Gourou (Le 02/10/2008, à 20:50)
Hors ligne
#2 Le 02/10/2008, à 19:32
- HP
Re : [Résolu] Login intermédiaire en PHP
et pourquoi pas l'étape login avant ?
parce que le script php ne peut pas s'interrompre, comme en bash ou c… c'est lié au fait que c'est du web… alors soit login avant, soit AJAX…
Dernière modification par HP (Le 02/10/2008, à 19:33)
cat /dev/urandom >/dev/null 2>&1 #github
Hors ligne
#3 Le 02/10/2008, à 19:33
- tiky
Re : [Résolu] Login intermédiaire en PHP
Salut,
Je suis en train de faire une page dans laquelle l'utilisateur rentre des infos dans une base de données. J'aimerais y mettre une contrainte : s'il s'agit de l'admin (c'est moi), alors les données vont direct dans la base, sinon elles lui (me) sont envoyées par mail. Pour que ce soit léger et pratique à utiliser, le formulaire contient une case « je suis l'admin » à cocher, et j'aimerais que si elle est cochée l'utilisateur reçoive un prompt de login. Donc en gros :
formulaire
/ \
si admin si pas admin
| |
login envoi mail
|
envoi
databaseJe n'ai pas de problème à coder les différentes parties, le seul souci que j'ai c'est au niveau du login : comment faire en sorte que le script PHP utilise une étape intermédiaire (le login) ? Un peu dans le genre de cin en C++, ou de read en bash/sh, que le script s'arrête pour attendre une entrée (je voudrais faire un truc simple, comme il n'y a qu'un seul admin, genre juste comparer une somme md5 codée en dur dans le script PHP, mais bon c'est pas le problème).
Je sais pas si c'est clair ?
Merci.
Si j'ai bien compris, tu voudrais que ton script PHP situé sur ton serveur attende que l'utilisateur écrive quelque chose dans le formulaire? Si c'est le cas, tu n'as pas compris le fonctionnement du PHP. Tu ne peux pas faire cela. Il faut utiliser la technologie Ajax. Regarde ce topic: http://forum.ubuntu-fr.org/viewtopic.php?id=252675 ( 8ème poste )
Je suis vraiment pas sûr d'avoir compris ce que tu veux.
Dernière modification par tiky (Le 02/10/2008, à 19:36)
Conseil d'expert: il vous faut un dentifrice adapté...
Hors ligne
#4 Le 02/10/2008, à 19:36
- tiky
Re : [Résolu] Login intermédiaire en PHP
et pourquoi pas l'étape login avant ?
parce que le script php ne peut pas s'interrompre, comme en bash ou c… c'est lié au fait que c'est du web… alors soit login avant, soit AJAX…
Oui ça serait plus logique.
Conseil d'expert: il vous faut un dentifrice adapté...
Hors ligne
#5 Le 02/10/2008, à 19:36
- Skippy le Grand Gourou
Re : [Résolu] Login intermédiaire en PHP
Tiens, j'allais justement m'autorépondre…
Pas login avant parce que j'avais pas envie… J'ai plusieurs arguments mais ils sont tous plus ou moins bidons quand j'y réfléchis. Mais quitte à revenir en arrière après, j'aime bien aller jusqu'au bout de ce que je veux faire.
En l'occurrence je pense qu'il y a moyen avec une bête fenêtre javascript : je viens de tenter une « alert », il affiche le texte du script avant et n'affiche la fin qu'après fermeture du popup. Donc si je trouve comment faire une alerte avec des entrées ce sera bon — si c'est possible.
Edit : Tiky > Je voulais éviter de me plonger dans l'Ajax…
Edit2 : Yes ! Javascript:prompt… Je teste.
Dernière modification par Skippy le Grand Gourou (Le 02/10/2008, à 19:39)
Hors ligne
#6 Le 02/10/2008, à 20:05
- tiky
Re : [Résolu] Login intermédiaire en PHP
Tiens, j'allais justement m'autorépondre…
Pas login avant parce que j'avais pas envie… J'ai plusieurs arguments mais ils sont tous plus ou moins bidons quand j'y réfléchis. Mais quitte à revenir en arrière après, j'aime bien aller jusqu'au bout de ce que je veux faire.
En l'occurrence je pense qu'il y a moyen avec une bête fenêtre javascript : je viens de tenter une « alert », il affiche le texte du script avant et n'affiche la fin qu'après fermeture du popup. Donc si je trouve comment faire une alerte avec des entrées ce sera bon — si c'est possible.
Edit : Tiky > Je voulais éviter de me plonger dans l'Ajax…
Edit2 : Yes ! Javascript:prompt… Je teste.
Javascript ne peut pas interrompre l'exécution d'un script PHP. Regarde mon poste sur l'autre topic pour comprendre. La seule solution sans utiliser Ajax et de mettre la somme de contrôle du mot de passe dans le code javascript en dur, et de la comparer avec celle du résultat du prompt, mais c'est vraiment vraiment la plus mauvaise solution. Pas sûr, pas propre...
Conseil d'expert: il vous faut un dentifrice adapté...
Hors ligne
#7 Le 02/10/2008, à 20:13
- Skippy le Grand Gourou
Re : [Résolu] Login intermédiaire en PHP
Trouvé. Pas exactement l'idée de départ que j'avais au niveau de la prog, mais le résultat est identique. En gros :
script.js :
function verif()
{
[…]
if (document.getElementById("onsenfout").admin.checked)
document.getElementById("onsenfout").passwd.value = prompt ('Password :');
[…]
}
formulaire.html :
[…]
<form action="monscript.php" method="post" id="onsenfout" onsubmit="javascript:return verif();">
[…]
<input type="checkbox" name="admin" value="admin"/> I am the admin.
<input type="hidden" name="passwd" value=""/>
<input type="submit" name="submit" value="Submit entry"/>
</form>
[…]
monscript.php :
[…]
if (isset($_POST['admin']))
{
if ($_POST['passwd']=="motdepasseàlacon")
{
[…]
}
else
{
echo "Bien essayé.";
exit();
}
[…]
}
Dernière modification par Skippy le Grand Gourou (Le 02/10/2008, à 20:50)
Hors ligne
#8 Le 25/11/2008, à 12:32
- slasher_fun
Re : [Résolu] Login intermédiaire en PHP
Bonjour,
En raison d'une recrudescence du spam sur ce topic, celui-ci est actuellement fermé. Si vous souhaitez le rouvrir pour y ajouter quelque chose, signalez simplement ce message.
Hors ligne
Pages : 1
Discussion fermée