Probleme de compréhension code php

Fermé
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 - 22 avril 2008 à 14:26
 Freakfonk - 13 juil. 2012 à 11:17
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.
A voir également:

11 réponses

gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 332
22 avril 2008 à 14:55
<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
1
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 2
22 avril 2008 à 15:05
C'est bon il fonctionne. je vois effectivement dans http://localhost/adresse_de_ta_page.

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.
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 332
22 avril 2008 à 14:29
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
0
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 2
22 avril 2008 à 14:31
non enfaite je voulais dire par quoi modifier cette ligne de code?
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 332
22 avril 2008 à 14:32
Par rien !
Y'a rien à modifier. cette ligne veut dire que le traitement sur fera par POST sur la page en cours.
0
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 2
22 avril 2008 à 14:39
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 <..
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 332
22 avril 2008 à 14:40
T'as un serveur ou tu testes directement la page dans le navigateur ?
0
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 2
22 avril 2008 à 14:46
je test sur WampServer 2.0 et je suis censé me connecter avec ma BDD lorsque je fini de remplir le formulaire
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 332
22 avril 2008 à 15:06
et ?
0
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 2
22 avril 2008 à 15:10
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??
0
*gab* Messages postés 244 Date d'inscription lundi 3 septembre 2007 Statut Membre Dernière intervention 2 mai 2008 60
22 avril 2008 à 15:38
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*
0
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 2
22 avril 2008 à 15:50
Oui dès que j'ai du nouveau je te ferai signe.

t'es à quel stade?
0
*gab* Messages postés 244 Date d'inscription lundi 3 septembre 2007 Statut Membre Dernière intervention 2 mai 2008 60 > Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009
22 avril 2008 à 16:01
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*
0
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 2 > *gab* Messages postés 244 Date d'inscription lundi 3 septembre 2007 Statut Membre Dernière intervention 2 mai 2008
22 avril 2008 à 18:17
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
0
*gab* Messages postés 244 Date d'inscription lundi 3 septembre 2007 Statut Membre Dernière intervention 2 mai 2008 60 > Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009
22 avril 2008 à 18:47
Salut,

Okay, je vais voir ça, merci, j'te tiens au courant si je trouve des bons tutos ! (c'est pas facile quand même...)

*gab*
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 332
22 avril 2008 à 15:40
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 ....
0
gryzzly Messages postés 4608 Date d'inscription lundi 7 novembre 2005 Statut Contributeur Dernière intervention 24 octobre 2020 1 332
22 avril 2008 à 15:43
et il sort d'ou ce tuto ?
0
Discretboy Messages postés 55 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 26 mai 2009 2
22 avril 2008 à 15:46
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
0
Bonjour, je déterre un mort mais je suis également sur ce tuto...

<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?
0