Mon header(location:index.php) ne marche pas !
Résolu
MrAkiroKun
Messages postés
29
Date d'inscription
Statut
Membre
Dernière intervention
-
benoit -
benoit -
Bonjour,
Je suis Développeur Web depuis un ans, et j'ai voulu me lancer dans la création d'un réseau social (gros projet je sais) mais j'ai un problème avec le script d'inscription :
<?php
include('includes/config.php');
if(isset($_SESSION['pseudo'])){
header('Location:index.php');
}
if(isset($_POST['envoyer'])){
if(isset($_POST['pseudo']) AND !empty($_POST['pseudo']) AND isset($_POST['email']) AND !empty($_POST['email']) AND isset($_POST['password']) AND !empty($_POST['password']) AND isset($_POST['password2']) AND !empty($_POST['password2']))
{
//Tous les champs ont été remplis
$pseudo = $_POST['pseudo'];
$email = strtolower($_POST['email']);
$link_img = "http://www.gravatar.com/avatar/" . md5($email);
$password = md5($_POST['password']);
$password2 = md5($_POST['password2']);
$longueur_pseudo = strlen($pseudo);
if($longueur_pseudo<=30)
{
//Le pseudo respecte le format
if($password == $password2)
{
//Les mots de passe sont identique
$query = $DB->prepare('INSERT INTO membres(pseudo, email, password, link_img) VALUES (:pseudo, :email, :password, :link_img)');
$query->execute(array(
'pseudo' => $pseudo,
'email' => $email,
'password' => $password,
'link_img' => $link_img
));
$dir = strtolower("../users/".$pseudo);
$content = "<p>Page personnel</p>";
if($pseudo)
{
mkdir($dir);
$open = fopen($dir."/index.php", "w"); // tu as plusieurs mode d'ouverture regarde sur internet (W write, R read)
fwrite($open, $content);
fclose($open);
}
else
{
header('location:index.php');
}
header('location:index.php');
}
else
{
$erreur = "Les mots de passe ne correspondent pas !";
}
}
else
{
$erreur = "Le pseudo ne doit contenir que 30 caractère maximum !";
}
}
}
else
{
$erreur = "Tous les champs sont obligatoire !";
}
?>
Je suis Développeur Web depuis un ans, et j'ai voulu me lancer dans la création d'un réseau social (gros projet je sais) mais j'ai un problème avec le script d'inscription :
<?php
include('includes/config.php');
if(isset($_SESSION['pseudo'])){
header('Location:index.php');
}
if(isset($_POST['envoyer'])){
if(isset($_POST['pseudo']) AND !empty($_POST['pseudo']) AND isset($_POST['email']) AND !empty($_POST['email']) AND isset($_POST['password']) AND !empty($_POST['password']) AND isset($_POST['password2']) AND !empty($_POST['password2']))
{
//Tous les champs ont été remplis
$pseudo = $_POST['pseudo'];
$email = strtolower($_POST['email']);
$link_img = "http://www.gravatar.com/avatar/" . md5($email);
$password = md5($_POST['password']);
$password2 = md5($_POST['password2']);
$longueur_pseudo = strlen($pseudo);
if($longueur_pseudo<=30)
{
//Le pseudo respecte le format
if($password == $password2)
{
//Les mots de passe sont identique
$query = $DB->prepare('INSERT INTO membres(pseudo, email, password, link_img) VALUES (:pseudo, :email, :password, :link_img)');
$query->execute(array(
'pseudo' => $pseudo,
'email' => $email,
'password' => $password,
'link_img' => $link_img
));
$dir = strtolower("../users/".$pseudo);
$content = "<p>Page personnel</p>";
if($pseudo)
{
mkdir($dir);
$open = fopen($dir."/index.php", "w"); // tu as plusieurs mode d'ouverture regarde sur internet (W write, R read)
fwrite($open, $content);
fclose($open);
}
else
{
header('location:index.php');
}
header('location:index.php');
}
else
{
$erreur = "Les mots de passe ne correspondent pas !";
}
}
else
{
$erreur = "Le pseudo ne doit contenir que 30 caractère maximum !";
}
}
}
else
{
$erreur = "Tous les champs sont obligatoire !";
}
?>
A voir également:
- Header location php
- Request header or cookie too large - Forum Webmastering
- Easy php - Télécharger - Divers Web & Internet
- Gpt header corruption ✓ - Forum Windows 10
- Expert php pinterest - Télécharger - Langages
- Bad pool header ✓ - Forum Windows 7
2 réponses
Bonjour
Lequel de tes headers ne marche pas ?
As-tu un message d'erreur ?
Es-tu sûr de ne rien envoyer avant le premier <?php ? Pas le moindre espace, passage à la ligne ? Pas de BOM ? Le BOM est un caractère invisible que certains éditeurs ajoutent en début des fichiers en UTF8, il faut alors enregistrer son fichier en précisant l'option "sans BOM".
Lequel de tes headers ne marche pas ?
As-tu un message d'erreur ?
Es-tu sûr de ne rien envoyer avant le premier <?php ? Pas le moindre espace, passage à la ligne ? Pas de BOM ? Le BOM est un caractère invisible que certains éditeurs ajoutent en début des fichiers en UTF8, il faut alors enregistrer son fichier en précisant l'option "sans BOM".
Zoro
Je te remercie mais tellement ! Je galérais depuis plusieurs heures sur ça et tout marche enfin!! Merci!
Happy
Merci, j'avais le même problème. C'était mon fichier 'connectDb.php' que j'incluais au début du script qui était en UTF8 normal, il a fallu le mettre sans BOM.