Probleme de compréhension code php

Discretboy Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -  
 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.
A voir également:

11 réponses

gryzzly Messages postés 4608 Date d'inscription   Statut Contributeur Dernière intervention   1 335
 
<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   Statut Membre Dernière intervention   2
 
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   Statut Contributeur Dernière intervention   1 335
 
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   Statut Membre Dernière intervention   2
 
non enfaite je voulais dire par quoi modifier cette ligne de code?
0
gryzzly Messages postés 4608 Date d'inscription   Statut Contributeur Dernière intervention   1 335
 
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   Statut Membre Dernière intervention   2
 
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   Statut Contributeur Dernière intervention   1 335
 
T'as un serveur ou tu testes directement la page dans le navigateur ?
0
Discretboy Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   2
 
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   Statut Contributeur Dernière intervention   1 335
 
et ?
0
Discretboy Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   2
 
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
Utilisateur anonyme
 
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   Statut Membre Dernière intervention   2
 
Oui dès que j'ai du nouveau je te ferai signe.

t'es à quel stade?
0
Utilisateur anonyme > Discretboy Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention   2 > Utilisateur anonyme
 
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
Utilisateur anonyme > Discretboy Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
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   Statut Contributeur Dernière intervention   1 335
 
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   Statut Contributeur Dernière intervention   1 335
 
et il sort d'ou ce tuto ?
0
Discretboy Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   2
 
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
Freakfonk
 
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