Probleme de compréhension code php
Discretboy
Messages postés
55
Date d'inscription
Statut
Membre
Dernière intervention
-
Freakfonk -
Freakfonk -
Bonjour,
Bonjour,
je suis actuellement un tuto de PHP pour créer un formulaire d'inscription (login).
Mais je ne reçois pas d'explication donc j'essai sur le forum comment ca marche.
Ma question (toute simple) serai de savoir la signification de cette ligne:
<form action="http://<?php= $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">
et par quoi dois-je remplacer $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]
je pense avoir une idée mais je ne suis pas sur merci.
Bonjour,
je suis actuellement un tuto de PHP pour créer un formulaire d'inscription (login).
Mais je ne reçois pas d'explication donc j'essai sur le forum comment ca marche.
Ma question (toute simple) serai de savoir la signification de cette ligne:
<form action="http://<?php= $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">
et par quoi dois-je remplacer $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]
je pense avoir une idée mais je ne suis pas sur merci.
A voir également:
- Probleme de compréhension code php
- Code ascii - Guide
- Code de déverrouillage oublié - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Code blocks - Télécharger - Langages
11 réponses
<form action="http://<?php $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post"> </form>
y'avait un "=" en trop
essayes ca :
<?php echo "http://" . $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>
tu dois voir comme résultat :
http://localhost/adresse_de_ta_page
par quoi dois-je remplacer
Par rien du tout. Y'a rien à modifier. Comment dire, c'est parfait comme ça. Euh... et puis dire aussi que pourquoi modifier ?
https://www.vulgarisation-informatique.com/variables-predefinies.php
Par rien du tout. Y'a rien à modifier. Comment dire, c'est parfait comme ça. Euh... et puis dire aussi que pourquoi modifier ?
https://www.vulgarisation-informatique.com/variables-predefinies.php
Par rien !
Y'a rien à modifier. cette ligne veut dire que le traitement sur fera par POST sur la page en cours.
Y'a rien à modifier. cette ligne veut dire que le traitement sur fera par POST sur la page en cours.
Ok, je n'est rien changé mais des que je valide le formulaire d'inscription(pour tester) mon formulaire.
mais j'ai ce message qui s'affiche:Serveur introuvable: Firefox ne peut trouver le serveur à l'adresse <..
mais j'ai ce message qui s'affiche:Serveur introuvable: Firefox ne peut trouver le serveur à l'adresse <..
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
je test sur WampServer 2.0 et je suis censé me connecter avec ma BDD lorsque je fini de remplir le formulaire
plus être plus claire voici mon code tel quel:
<?php
// Redirige l'utilisateur s'il est déjà identifié
if(isset($_COOKIE["ID_UTILISATEUR"]))
{
header("Location: index.php");
}
else
{
// Formulaire visible par défaut
$masquer_formulaire = false;
// Une fois le formulaire envoyé
if(isset($_POST["BT_Envoyer"]))
{
// Vérification de la validité des champs
if(!ereg("^[A-Za-z0-9_]{4,20}$", $_POST["TB_Nom_Utilisateur"]))
{
$message = "Votre nom d'utilisateur doit comporter entre 4 et 20 caractères<br />\n";
$message .= "L'utilisation de l'underscore est autorisée";
}
elseif(!ereg("^[A-Za-z0-9]{4,}$", $_POST["TB_Mot_de_Passe"]))
{
$message = "Votre mot de passe doit comporter au moins 4 caractères";
}
elseif($_POST["TB_Mot_de_Passe"] != $_POST["TB_Confirmation_Mot_de_Passe"])
{
$message = "Votre mot de passe n'a pas été correctement confirmé";
}
elseif(!ereg("^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,4}$",
$_POST["TB_Adresse_Email"]))
{
$message = "Votre adresse e-mail n'est pas valide";
}
else
{
// Connexion à la base de données
// Valeurs à modifier selon vos paramètres configuration
mysql_connect("localhost", "******", "*******");
mysql_select_db("Comptes_Utilisateurs");
// Vérification de l'unicité du nom d'utilisateur et de l'adresse e-mail
$result = mysql_query("
SELECT Nom_Utilisateur
, Adresse_Email
FROM Comptes_Utilisateurs
WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "'
OR Adresse_Email = '" . $_POST["TB_Adresse_Email"] . "'
");
// Si une erreur survient
if(!$result)
{
$message = "Une erreur est survenue lors de la création de votre compte utilisateur";
}
else
{
// Si un enregistrement est trouvé
if(mysql_num_rows($result) > 0)
{
while($row = mysql_fetch_array($result))
{
if($_POST["TB_Nom_Utilisateur"] == $row["Nom_Utilisateur"])
{
$message = "Le nom d'utilisateur " . $_POST["TB_Nom_Utilisateur"];
$message .= "est déjà utilisé";
}
elseif($_POST["TB_Adresse_Email"] == $row["Adresse_Email"])
{
$message = "L'adresse e-mail " . $_POST["TB_Adresse_Email"];
$message .= "est déjà utilisée";
}
}
}
else
{
// Génération de la clef d'activation
$caracteres = array("a", "b", "c", "d", "e", "f", 0, 1, 2, 3, 4, 5, 6, 7, 8, 9);
$caracteres_aleatoires = array_rand($caracteres, 8);
$clef_activation = "";
foreach($caracteres_aleatoires as $i)
{
$clef_activation .= $caracteres[$i];
}
// Création du compte utilisateur
$result = mysql_query("
INSERT INTO Comptes_Utilisateurs(
Nom_Utilisateur
, Mot_de_Passe
, Adresse_Email
, Date_Inscription
, Clef_Activation
)
VALUES(
'" . $_POST["TB_Nom_Utilisateur"] . "'
, '" . md5($_POST["TB_Mot_de_Passe"]) . "'
, '" . $_POST["TB_Adresse_Email"] . "'
, '" . time() . "'
, '" . $clef_activation . "'
)
");
// Si une erreur survient
if(!$result)
{
$message = "Une erreur est survenue lors de la création de votre compte utilisateur";
}
else
{
// Envoi du mail d'activation
$sujet = "Activation de votre compte utilisateur";
$message = "Pour valider votre inscription, merci de cliquer sur le lien suivant :\n";
$message .= "http://" . $_SERVER["SERVER_NAME"];
$message .= "/activer-compte-utilisateur.php?id=" . mysql_insert_id();
$message .= "&clef=" . $clef_activation;
// Si une erreur survient
if(!@mail($_POST["TB_Adresse_Email"], $sujet, $message))
{
$message = "Une erreur est survenue lors de l'envoi du mail d'activation<br />\n";
$message .= "Veuillez contacter l'administrateur afin d'activer votre compte";
}
else
{
// Message de confirmation
$message = "Votre compte utilisateur a correctement été créer<br />\n";
$message .= "Un email vient de vous être envoyer afin de l'activer";
// On masque le formulaire
$masquer_formulaire = true;
}
}
}
}
}
// Fermeture de la connexion à la base de données
mysql_close();
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="fr" xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>[PHP] Créer un espace membre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php if(isset($message)) { ?>
<p><?php= $message; ?></p>
<?php } if($masquer_formulaire != true) { ?>
<form action="http://<?php echo "http://" . $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"];?>" method="post">
<p>
Nom d'utilisateur : <input type="text" name="TB_Nom_Utilisateur" />
</p>
<p>
Mot de passe : <input type="password" name="TB_Mot_de_Passe" />
</p>
<p>
Confirmation du mot de passe : <input type="password" name="TB_Confirmation_Mot_de_Passe" />
</p>
<p>
Adresse e-mail : <input type="text" name="TB_Adresse_Email" />
</p>
<p>
<input type="submit" name="BT_Envoyer" value="Envoyer" />
</p>
</form>
<?php } ?>
</body>
</html>
perso je ne vois toujours pas mon erreur??
<?php
// Redirige l'utilisateur s'il est déjà identifié
if(isset($_COOKIE["ID_UTILISATEUR"]))
{
header("Location: index.php");
}
else
{
// Formulaire visible par défaut
$masquer_formulaire = false;
// Une fois le formulaire envoyé
if(isset($_POST["BT_Envoyer"]))
{
// Vérification de la validité des champs
if(!ereg("^[A-Za-z0-9_]{4,20}$", $_POST["TB_Nom_Utilisateur"]))
{
$message = "Votre nom d'utilisateur doit comporter entre 4 et 20 caractères<br />\n";
$message .= "L'utilisation de l'underscore est autorisée";
}
elseif(!ereg("^[A-Za-z0-9]{4,}$", $_POST["TB_Mot_de_Passe"]))
{
$message = "Votre mot de passe doit comporter au moins 4 caractères";
}
elseif($_POST["TB_Mot_de_Passe"] != $_POST["TB_Confirmation_Mot_de_Passe"])
{
$message = "Votre mot de passe n'a pas été correctement confirmé";
}
elseif(!ereg("^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,4}$",
$_POST["TB_Adresse_Email"]))
{
$message = "Votre adresse e-mail n'est pas valide";
}
else
{
// Connexion à la base de données
// Valeurs à modifier selon vos paramètres configuration
mysql_connect("localhost", "******", "*******");
mysql_select_db("Comptes_Utilisateurs");
// Vérification de l'unicité du nom d'utilisateur et de l'adresse e-mail
$result = mysql_query("
SELECT Nom_Utilisateur
, Adresse_Email
FROM Comptes_Utilisateurs
WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "'
OR Adresse_Email = '" . $_POST["TB_Adresse_Email"] . "'
");
// Si une erreur survient
if(!$result)
{
$message = "Une erreur est survenue lors de la création de votre compte utilisateur";
}
else
{
// Si un enregistrement est trouvé
if(mysql_num_rows($result) > 0)
{
while($row = mysql_fetch_array($result))
{
if($_POST["TB_Nom_Utilisateur"] == $row["Nom_Utilisateur"])
{
$message = "Le nom d'utilisateur " . $_POST["TB_Nom_Utilisateur"];
$message .= "est déjà utilisé";
}
elseif($_POST["TB_Adresse_Email"] == $row["Adresse_Email"])
{
$message = "L'adresse e-mail " . $_POST["TB_Adresse_Email"];
$message .= "est déjà utilisée";
}
}
}
else
{
// Génération de la clef d'activation
$caracteres = array("a", "b", "c", "d", "e", "f", 0, 1, 2, 3, 4, 5, 6, 7, 8, 9);
$caracteres_aleatoires = array_rand($caracteres, 8);
$clef_activation = "";
foreach($caracteres_aleatoires as $i)
{
$clef_activation .= $caracteres[$i];
}
// Création du compte utilisateur
$result = mysql_query("
INSERT INTO Comptes_Utilisateurs(
Nom_Utilisateur
, Mot_de_Passe
, Adresse_Email
, Date_Inscription
, Clef_Activation
)
VALUES(
'" . $_POST["TB_Nom_Utilisateur"] . "'
, '" . md5($_POST["TB_Mot_de_Passe"]) . "'
, '" . $_POST["TB_Adresse_Email"] . "'
, '" . time() . "'
, '" . $clef_activation . "'
)
");
// Si une erreur survient
if(!$result)
{
$message = "Une erreur est survenue lors de la création de votre compte utilisateur";
}
else
{
// Envoi du mail d'activation
$sujet = "Activation de votre compte utilisateur";
$message = "Pour valider votre inscription, merci de cliquer sur le lien suivant :\n";
$message .= "http://" . $_SERVER["SERVER_NAME"];
$message .= "/activer-compte-utilisateur.php?id=" . mysql_insert_id();
$message .= "&clef=" . $clef_activation;
// Si une erreur survient
if(!@mail($_POST["TB_Adresse_Email"], $sujet, $message))
{
$message = "Une erreur est survenue lors de l'envoi du mail d'activation<br />\n";
$message .= "Veuillez contacter l'administrateur afin d'activer votre compte";
}
else
{
// Message de confirmation
$message = "Votre compte utilisateur a correctement été créer<br />\n";
$message .= "Un email vient de vous être envoyer afin de l'activer";
// On masque le formulaire
$masquer_formulaire = true;
}
}
}
}
}
// Fermeture de la connexion à la base de données
mysql_close();
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="fr" xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>[PHP] Créer un espace membre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php if(isset($message)) { ?>
<p><?php= $message; ?></p>
<?php } if($masquer_formulaire != true) { ?>
<form action="http://<?php echo "http://" . $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"];?>" method="post">
<p>
Nom d'utilisateur : <input type="text" name="TB_Nom_Utilisateur" />
</p>
<p>
Mot de passe : <input type="password" name="TB_Mot_de_Passe" />
</p>
<p>
Confirmation du mot de passe : <input type="password" name="TB_Confirmation_Mot_de_Passe" />
</p>
<p>
Adresse e-mail : <input type="text" name="TB_Adresse_Email" />
</p>
<p>
<input type="submit" name="BT_Envoyer" value="Envoyer" />
</p>
</form>
<?php } ?>
</body>
</html>
perso je ne vois toujours pas mon erreur??
Salut !
Je suis sur ce tuto aussi, et franchement c'est assez mal expliqué... Je vais suivre ce post, pourrais-tu au final résumer si tu parviens à tout comprendre s'il-te-plaît ? =D
Merci d'avance ! ;)
*gab*
Je suis sur ce tuto aussi, et franchement c'est assez mal expliqué... Je vais suivre ce post, pourrais-tu au final résumer si tu parviens à tout comprendre s'il-te-plaît ? =D
Merci d'avance ! ;)
*gab*
Merci ! :)
Hmm... Comment dire ? Stade zéro puisque j'essaye de comprendre le code ! :D
Ça aurait été plus simple si l'auteur de ce tutoriel explique chaque ligne du code en nous disant concrètement les pages qu'il faut créer et qu'est ce qu'il faut mettre dans ces différentes pages... :) J'espère que je vais comprendre ici... :D
*gab*
Hmm... Comment dire ? Stade zéro puisque j'essaye de comprendre le code ! :D
Ça aurait été plus simple si l'auteur de ce tutoriel explique chaque ligne du code en nous disant concrètement les pages qu'il faut créer et qu'est ce qu'il faut mettre dans ces différentes pages... :) J'espère que je vais comprendre ici... :D
*gab*
Salut,
après plusieurs tentatives avec le tuto mentionner auparavant.
j'ai chercher un site pouvant expliquer un peux mieux le développement et ce n'as pas été trop dur car la j'ai réussi a coder pour un bulletin d'inscription et l'enregistrement automatique dans ma BDD.
Le seul hic pour l'instant c l'absence d'un code pour un envoie d'un mail à l'inscrit. mais je continue a suivre les autres cours et je pense bientôt y arriver. A bientôt!
le liens:http://www.lephpfacile.com/howto/10-comment-faire-un-espace-membre-en-php
fais-moi signe si tu trouves de bonnes info sur php, merci
après plusieurs tentatives avec le tuto mentionner auparavant.
j'ai chercher un site pouvant expliquer un peux mieux le développement et ce n'as pas été trop dur car la j'ai réussi a coder pour un bulletin d'inscription et l'enregistrement automatique dans ma BDD.
Le seul hic pour l'instant c l'absence d'un code pour un envoie d'un mail à l'inscrit. mais je continue a suivre les autres cours et je pense bientôt y arriver. A bientôt!
le liens:http://www.lephpfacile.com/howto/10-comment-faire-un-espace-membre-en-php
fais-moi signe si tu trouves de bonnes info sur php, merci
Et ?
un message d'erreur peut être ? Qu'est ce qui marche pas ? Qu'est ce qui marche ?
J'ai pas envie de chercher dans le vide ....
un message d'erreur peut être ? Qu'est ce qui marche pas ? Qu'est ce qui marche ?
J'ai pas envie de chercher dans le vide ....
et il sort d'ou ce tuto ?
le tuto vient de la http://www.asp-php.net/...
désolé d'avoir été aussi vague. mais la j'ai réussi a trouvé ce qui clochait. maintenant j'ai un autre message d'erreur que j'essai d'analyser:
You don't have permission to access /espace_membre/creer-compte-utilisateur.php" on this server.
je ne suis que débutant enprog. mais je suis sûr que je ne suis pas censé recevoir cette erreur puisque je viens de remplir mon formulaire d'inscription?? En remplissant mon formulaire Ma BDD est censé créer des ligne pour chaque nouveau utilisateurs et un au niveau php je dois recevoir un mail d'activation. ce que je ne recois pas!
merci
désolé d'avoir été aussi vague. mais la j'ai réussi a trouvé ce qui clochait. maintenant j'ai un autre message d'erreur que j'essai d'analyser:
You don't have permission to access /espace_membre/creer-compte-utilisateur.php" on this server.
je ne suis que débutant enprog. mais je suis sûr que je ne suis pas censé recevoir cette erreur puisque je viens de remplir mon formulaire d'inscription?? En remplissant mon formulaire Ma BDD est censé créer des ligne pour chaque nouveau utilisateurs et un au niveau php je dois recevoir un mail d'activation. ce que je ne recois pas!
merci
Bonjour, je déterre un mort mais je suis également sur ce tuto...
Je n'arrive pas à le modifier, ou du moins à le faire marcher, avec l'une ou l'autre des solutions.
Quelqu'un saurait?
<form action="http://<?php $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post"> </form> y'avait un "=" en trop essayes ca : <?php echo "http://" . $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>
Je n'arrive pas à le modifier, ou du moins à le faire marcher, avec l'une ou l'autre des solutions.
Quelqu'un saurait?
mais apparement j'ai un autre problème c'est celui de ma connection avec ma BDD.
Je t'explique:
j'ai 6 pages de code: activer-compte-utilisateur.php, creer-compte-utilisateur.php, index.php, formulaire-d-inscription.php
connexion.php et enfin deconnexion.php
J'ai suivi exactement un tuto à la lettre de meme pour la création de la BDD mais apparement il n'est pas fameux ce tuto. j'ai envoyé plusieurs question mais il n'y pas de réponse.