Not Found Error 404
Fermé
loute08
Messages postés
227
Date d'inscription
jeudi 24 avril 2008
Statut
Membre
Dernière intervention
29 août 2015
-
1 août 2008 à 10:24
loute08 Messages postés 227 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 29 août 2015 - 1 août 2008 à 11:42
loute08 Messages postés 227 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 29 août 2015 - 1 août 2008 à 11:42
4 réponses
zzzer
Messages postés
906
Date d'inscription
dimanche 25 mai 2008
Statut
Membre
Dernière intervention
3 décembre 2023
181
1 août 2008 à 10:27
1 août 2008 à 10:27
Si ta page newsletter.php existe bien dans le bon dosseri, essaye de passer tes variables en POST.
loute08
Messages postés
227
Date d'inscription
jeudi 24 avril 2008
Statut
Membre
Dernière intervention
29 août 2015
1
1 août 2008 à 11:06
1 août 2008 à 11:06
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...
<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...
zzzer
Messages postés
906
Date d'inscription
dimanche 25 mai 2008
Statut
Membre
Dernière intervention
3 décembre 2023
181
1 août 2008 à 11:07
1 août 2008 à 11:07
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 :
Mais je ne comprends pas à quoi sert ceci :
$message="Vous n'êtes pas inscrit !"; $message=base64_encode($message); } } header("location: newsletter.php&etat=".$message);
loute08
Messages postés
227
Date d'inscription
jeudi 24 avril 2008
Statut
Membre
Dernière intervention
29 août 2015
1
1 août 2008 à 11:19
1 août 2008 à 11:19
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à....
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à....
zzzer
Messages postés
906
Date d'inscription
dimanche 25 mai 2008
Statut
Membre
Dernière intervention
3 décembre 2023
181
>
loute08
Messages postés
227
Date d'inscription
jeudi 24 avril 2008
Statut
Membre
Dernière intervention
29 août 2015
1 août 2008 à 11:22
1 août 2008 à 11:22
En codant "Vous n'êtes pas inscrit !" ?
loute08
Messages postés
227
Date d'inscription
jeudi 24 avril 2008
Statut
Membre
Dernière intervention
29 août 2015
1
>
zzzer
Messages postés
906
Date d'inscription
dimanche 25 mai 2008
Statut
Membre
Dernière intervention
3 décembre 2023
1 août 2008 à 11:29
1 août 2008 à 11:29
Oui après les vérifications dans la BDD...
zzzer
Messages postés
906
Date d'inscription
dimanche 25 mai 2008
Statut
Membre
Dernière intervention
3 décembre 2023
181
>
loute08
Messages postés
227
Date d'inscription
jeudi 24 avril 2008
Statut
Membre
Dernière intervention
29 août 2015
1 août 2008 à 11:32
1 août 2008 à 11:32
Mais pourquoi le coder ?
Et pourquoi ne pas le passer en POST comme le reste ?
Et pourquoi ne pas le passer en POST comme le reste ?
loute08
Messages postés
227
Date d'inscription
jeudi 24 avril 2008
Statut
Membre
Dernière intervention
29 août 2015
1
1 août 2008 à 11:42
1 août 2008 à 11:42
Je n'en ai aucune idée...
1 août 2008 à 10:45
--->> <form method="post" action="newsletter_2.php" style="margin: 0px;">
1 août 2008 à 10:46