Not Found Error 404

loute08 Messages postés 230 Statut Membre -  
loute08 Messages postés 230 Statut Membre -
Bonjour,

Voilà j'ai un formulaire d'inscription à une newsletter seulement quand je valide j'ai ce message d'erreur

Not Found

The requested URL /site_retravaille/newsletter.php&etat=Vm91cyAmZWNpcmM7dGVzIGQmZWFjdXRlO2phIGluc2NyaXQgIQ== was not found on this server.

Quelqu'un peut-il m'aider ?

Merci d'avance.

4 réponses

zzzer Messages postés 938 Statut Membre 181
 
Si ta page newsletter.php existe bien dans le bon dosseri, essaye de passer tes variables en POST.

0
loute08 Messages postés 230 Statut Membre 1
 
ben le problème c'est que c'est déjà en post

--->> <form method="post" action="newsletter_2.php" style="margin: 0px;">
0
zzzer Messages postés 938 Statut Membre 181 > loute08 Messages postés 230 Statut Membre
 
Qu'est-ce que ta variable etat alors ?

0
loute08 Messages postés 230 Statut Membre 1
 
Une partie du contenu de mon newsletter.php

<table border="0">

<tbody>

<tr>

<?php echo "<td align='center'>";
if(isset($_GET['etat']))
{echo base64_decode($_GET['etat']);}
else
{echo "Pour vous inscrire à notre newsletter,<br> remplissez ce formulaire<br><br>";}
echo "</td></tr>"; ?>
</tr>

<tr>

<td align="center"><input name="email" size="30" maxlength="50" value="Adresse e-mail" onFocus="javascript:if(this.value == 'Adresse e-mail') this.value='';" onBlur="javascript:if(this.value == '') this.value='Adresse e-mail';" type="text"></td>

</tr>

<tr>

<td align="center">
<input name="action" value="add" checked="checked" type="radio">Inscription <input name="action" value="delete" type="radio">
Désinscription</td>

</tr>

<tr>

<td align="center"><input value="Valider" type="submit"></td>

</tr>

</tbody>
</table>

Le contenu de mon newsletter_2.php

<?php
mysql_connect("localhost", "root", ""); //On remplace les information par la vraie bdd
mysql_select_db("contact_site");

$mail=$_POST['email'];

function valid_email($email) {
// First, we check that there's one @ symbol, and that the lengths are right
if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
// Email invalid because wrong number of characters in one section, or wrong number of @ symbols.
return false;
}
// Split it into sections to make life easier
$email_array = explode("@", $email);
$local_array = explode(".", $email_array[0]);
for ($i = 0; $i < sizeof($local_array); $i++) {
if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) {
return false;
}
}
if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) { // Check if domain is IP. If not, it should be valid domain name
$domain_array = explode(".", $email_array[1]);
if (sizeof($domain_array) < 2) {
return false; // Not enough parts to domain
}
for ($i = 0; $i < sizeof($domain_array); $i++) {
if (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) {
return false;
}
}
}
return true;
}

if (!valid_email($mail))
{
$message="E-mail invalide";
$message=base64_encode($message);
}
else if ($_POST['action']=='add')
{
$compter = mysql_query("SELECT * FROM newsletter WHERE email='".$mail."'");
$doublons = mysql_num_rows($compter);
if($doublons == "0")
{
$sql="INSERT INTO newsletter VALUES('".$mail."')";
$req=mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$message="Vous allez désormais recevoir notre Newsletter à l'adresse :".$mail;
$message=base64_encode($message);
}
else
{
$message="Vous êtes déja inscrit !";
$message=base64_encode($message);
}
}
else if ($_POST['action']=='delete')
{
$compter = mysql_query("SELECT * FROM newsletter WHERE email='".$mail."'");
$doublons = mysql_num_rows($compter);
if($doublons == "1")
{
mysql_query("DELETE FROM newsletter WHERE email='".$email."'");
$message="Votre désinscription a bien été prise en compte";
$message=base64_encode($message);
}
else
{
$message="Vous n'êtes pas inscrit !";
$message=base64_encode($message);
}
}

header("location: newsletter.php&etat=".$message);
?>

Je dois t'avouer que je suis très nulle en php...
0
zzzer Messages postés 938 Statut Membre 181
 
Et moi je dois t'avouer que je suis au bureau, donc que je n'ai pas le temps de lire tout ton code...

Mais je ne comprends pas à quoi sert ceci :
$message="Vous n'êtes pas inscrit !";
$message=base64_encode($message);
}
}

header("location: newsletter.php&etat=".$message); 
0
loute08 Messages postés 230 Statut Membre 1
 
Je dois t'avouer qu'il y a plusieurs personnes qui ont voulu m'aider... en fait pour résumer, le newsletter_2.php ne contient que le code php qui traite l'insertion dans la BDD, avec vérification des champs etc...

Le header location... devait indiquer dans ma page newsletter.php (celle où il y a mon formulaire d'inscription) si le visiteur avait bien été inscrit, si il l'était déjà....
0
zzzer Messages postés 938 Statut Membre 181 > loute08 Messages postés 230 Statut Membre
 
En codant "Vous n'êtes pas inscrit !" ?

0
loute08 Messages postés 230 Statut Membre 1 > zzzer Messages postés 938 Statut Membre
 
Oui après les vérifications dans la BDD...
0
zzzer Messages postés 938 Statut Membre 181 > loute08 Messages postés 230 Statut Membre
 
Mais pourquoi le coder ?
Et pourquoi ne pas le passer en POST comme le reste ?

0
loute08 Messages postés 230 Statut Membre 1
 
Je n'en ai aucune idée...
0