Version complète: sur le forum Webmaster Hub : Insertion de ma fonction
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > Scripts et utilitaires
Gribouille26
Salut,

Je me bat depuis quelques heures avec un Annuaire sur la base de Phpmyannu.
Je voudrais lui ajouté l'envoie d'un mail en cas de refus du site.

J'ai écrit ça:
CODE
if($func_mail)
       {
       $message = "Votre site $url_site2del[$i] vient d'être visité par notre équipe.\n";
       $message .= "Il ne correspond pas à la thématique de l'$titre_site ou contrevient à son éthique.\n\n";
       //envoi du mail
       send_mail($resultat["email_proprio"],"Votre site est refusé",htmlspecialchars($message),$email_master);
   } //fin if func_mail

Mais je n'arrive pas à l'inserer dans le code déjà en place....
Je voudrais le mettre à l'emplacement de la croix, mais ça ne marche pas...
CODE
if ($nb_site2add + $nb_site2del)
{
for($i=0;$i<$nb_site2add;$i++)
{
$sql = "SELECT * FROM $T_sites_in_wait WHERE url = '$url_site2add[$i]' AND id_cat = '$id_cat_site2add[$i]' ";
$res = send_sql($sql,"sélectionner les sites a ajouter dans site_in_wait");
$resultat = mysql_fetch_array($res,MYSQL_ASSOC);

$resultat["titre"] = addslashes($resultat["titre"]);
$resultat["nom_proprio"] = addslashes($resultat["nom_proprio"]);
$resultat["description"] = addslashes($resultat["description"]);

if (mysql_num_rows($res))
{
$sql = "INSERT INTO $T_sites (id_cat,titre,description,url,nom_proprio,email_proprio,date_validation) VALUES ('$resultat[id_cat]','$resultat[titre]','$resultat[description]','$resultat[url]','$resultat[nom_proprio]','$resultat[email_proprio]',CURRENT_DATE) ";
$ins = send_sql($sql,"insérer le site dans la table des sites de l'annuaire");
$sql = "DELETE FROM $T_sites_in_wait WHERE url = '$url_site2add[$i]' AND id_cat = '$id_cat_site2add[$i]'";
$del = send_sql($sql,"supprimer le site $url_site2add dans la table des sites en attente");
echo "Le site \"".htmlspecialchars($url_site2add[$i])."\" vient d'être ajouté dans votre annuaire\n<br>\n";
if($func_mail)
{
$message = "Votre site $url_site2add[$i] vient d'être visité par notre équipe.\n";
$message .= "Il a été accepté et donc ajouté dans l' $titre_site\n\n";
$message .= "Vous pouvez le voir dans notre annuaire à l'adresse suivante : $url_rep/index.php?cat_id=$resultat[id_cat]\n";
send_mail($resultat["email_proprio"],"Votre site est inscrit dans l' $titre_site",htmlspecialchars($message),$email_master);
}
}
else
{ echo "Erreur lors de la sélection, impossible de retrouver le site à insérer dans la table des sites en attente !\n<br>\n"; }
}

echo "<br><br>\n";
for ($i=0;$i<$nb_site2del;$i++)
X
{
$sql = "DELETE FROM $T_sites_in_wait WHERE url = '$url_site2del[$i]' AND id_cat = '$id_cat_site2del[$i]' ";
$del = send_sql($sql,"supprimer le site $url_site2del dans la table des sites en attentes (admin)");
echo "Le site \"".htmlspecialchars($url_site2del[$i])."\" a été refusé !\n<br>\n";
}
}//fin du if (nb_site2add + nb_site2del)


Merci d'avance de votre aide !!

Gribouille
Compte supprimé
il l'insérer juste une ligne en dessous : aprés {
Gribouille26
Oui, mais je voulais des explications avec.... whistling.gif
Merci, je vais tester !

[édit]Non, Jeroen, ça marche pas.... Quelle était ta démarche?[/édit]

Gribouille
Gribouille26
Toujours rien....
J'arrive à faire des bugs sympas, mais pas de mail ! IMSTP6.gif

Gribouille
Compte supprimé
il manquait une selection à la base

essaie ça :
CODE
if ($nb_site2add + $nb_site2del)
{
for($i=0;$i<$nb_site2add;$i++)
{
$sql = "SELECT * FROM $T_sites_in_wait WHERE url = '$url_site2add[$i]' AND id_cat = '$id_cat_site2add[$i]' ";
$res = send_sql($sql,"sélectionner les sites a ajouter dans site_in_wait");
$resultat = mysql_fetch_array($res,MYSQL_ASSOC);

$resultat["titre"] = addslashes($resultat["titre"]);
$resultat["nom_proprio"] = addslashes($resultat["nom_proprio"]);
$resultat["description"] = addslashes($resultat["description"]);

if (mysql_num_rows($res))
{
$sql = "INSERT INTO $T_sites (id_cat,titre,description,url,nom_proprio,email_proprio,date_validation) VALUES ('$resultat[id_cat]','$resultat[titre]','$resultat[description]','$resultat[url]','$resultat[nom_proprio]','$resultat[email_proprio]',CURRENT_DATE) ";
$ins = send_sql($sql,"insérer le site dans la table des sites de l'annuaire");
$sql = "DELETE FROM $T_sites_in_wait WHERE url = '$url_site2add[$i]' AND id_cat = '$id_cat_site2add[$i]'";
$del = send_sql($sql,"supprimer le site $url_site2add dans la table des sites en attente");
echo "Le site \"".htmlspecialchars($url_site2add[$i])."\" vient d'être ajouté dans votre annuaire\n<br>\n";
if($func_mail)
{
$message = "Votre site $url_site2add[$i] vient d'être visité par notre équipe.\n";
$message .= "Il a été accepté et donc ajouté dans l' $titre_site\n\n";
$message .= "Vous pouvez le voir dans notre annuaire à l'adresse suivante : $url_rep/index.php?cat_id=$resultat[id_cat]\n";
send_mail($resultat["email_proprio"],"Votre site est inscrit dans l' $titre_site",htmlspecialchars($message),$email_master);
}
}
else
{
echo "Erreur lors de la sélection, impossible de retrouver le site à insérer dans la table des sites en attente !\n<br>\n";
}
}

for ($i=0;$i<$nb_site2del;$i++)
{
$sql = "SELECT * FROM $T_sites_in_wait WHERE url = '$url_site2add[$i]' AND id_cat = '$id_cat_site2add[$i]' ";
$res = send_sql($sql,"sélectionner les sites a ajouter dans site_in_wait");
$resultat = mysql_fetch_array($res,MYSQL_ASSOC);
if (mysql_num_rows($res))
{
$sql = "DELETE FROM $T_sites_in_wait WHERE url = '$url_site2del[$i]' AND id_cat = '$id_cat_site2del[$i]' ";
$del = send_sql($sql,"supprimer le site $url_site2del dans la table des sites en attentes (admin)");
echo "Le site \"".htmlspecialchars($url_site2del[$i])."\" a été refusé !\n<br>\n";
if($func_mail)
{
$message = "Votre site $url_site2del[$i] vient d'être visité par notre équipe.\n";
$message .= "Il ne correspond pas à la thématique de l'$titre_site ou contrevient à son éthique.\n\n";
//envoi du mail
send_mail($resultat["email_proprio"],"Votre site est refusé",htmlspecialchars($message),$email_master);
} //fin if func_mail
}
}
} //fin du if (nb_site2add + nb_site2del)
Gribouille26
Maintenant, je ne peux plus refuser les sites !! blink.gif
Donc plus question de leur notifier mon refus.... laugh.gif

Gribouille
Compte supprimé
Sorry, une petite erreur

CODE
if ($nb_site2add + $nb_site2del)
{
for($i=0;$i<$nb_site2add;$i++)
{
$sql = "SELECT * FROM $T_sites_in_wait WHERE url = '$url_site2add[$i]' AND id_cat = '$id_cat_site2add[$i]' ";
$res = send_sql($sql,"sélectionner les sites a ajouter dans site_in_wait");
$resultat = mysql_fetch_array($res,MYSQL_ASSOC);

$resultat["titre"] = addslashes($resultat["titre"]);
$resultat["nom_proprio"] = addslashes($resultat["nom_proprio"]);
$resultat["description"] = addslashes($resultat["description"]);

if (mysql_num_rows($res))
{
$sql = "INSERT INTO $T_sites (id_cat,titre,description,url,nom_proprio,email_proprio,date_validation) VALUES ('$resultat[id_cat]','$resultat[titre]','$resultat[description]','$resultat[url]','$resultat[nom_proprio]','$resultat[email_proprio]',CURRENT_DATE) ";
$ins = send_sql($sql,"insérer le site dans la table des sites de l'annuaire");
$sql = "DELETE FROM $T_sites_in_wait WHERE url = '$url_site2add[$i]' AND id_cat = '$id_cat_site2add[$i]'";
$del = send_sql($sql,"supprimer le site $url_site2add dans la table des sites en attente");
echo "Le site \"".htmlspecialchars($url_site2add[$i])."\" vient d'être ajouté dans votre annuaire\n<br>\n";
if($func_mail)
{
$message = "Votre site $url_site2add[$i] vient d'être visité par notre équipe.\n";
$message .= "Il a été accepté et donc ajouté dans l' $titre_site\n\n";
$message .= "Vous pouvez le voir dans notre annuaire à l'adresse suivante : $url_rep/index.php?cat_id=$resultat[id_cat]\n";
send_mail($resultat["email_proprio"],"Votre site est inscrit dans l' $titre_site",htmlspecialchars($message),$email_master);
}
}
else
{
echo "Erreur lors de la sélection, impossible de retrouver le site à insérer dans la table des sites en attente !\n<br>\n";
}
}

for ($i=0;$i<$nb_site2del;$i++)
{
$sql = "SELECT * FROM $T_sites_in_wait WHERE url = '$url_site2del[$i]' AND id_cat = '$id_cat_site2del[$i]' ";
$res = send_sql($sql,"sélectionner les sites a ajouter dans site_in_wait");
$resultat = mysql_fetch_array($res,MYSQL_ASSOC);
if (mysql_num_rows($res))
{
$sql = "DELETE FROM $T_sites_in_wait WHERE url = '$url_site2del[$i]' AND id_cat = '$id_cat_site2del[$i]' ";
$del = send_sql($sql,"supprimer le site $url_site2del dans la table des sites en attentes (admin)");
echo "Le site \"".htmlspecialchars($url_site2del[$i])."\" a été refusé !\n<br>\n";
if($func_mail)
{
$message = "Votre site $url_site2del[$i] vient d'être visité par notre équipe.\n";
$message .= "Il ne correspond pas à la thématique de l'$titre_site ou contrevient à son éthique.\n\n";
//envoi du mail
send_mail($resultat["email_proprio"],"Votre site est refusé",htmlspecialchars($message),$email_master);
} //fin if func_mail
}
}
} //fin du if (nb_site2add + nb_site2del)
Gribouille26
Plus possible de refuser...
C'est pas facile...
Compte supprimé
??
Quelle est l'erreur retournée ??
Gribouille26
Il n'y a pas vraiment d'erreur.
L'action de refus du site ne se fait pas. unsure.gif

C'est-à-dire que je suis sur une page avce la liste des sites proposés. En face de chcun, 3 bouton radio pour refuser, valider ou mettre en attente.
Je choisis de refuser puis valide le formulaire.
Une page de réponse de la validation qui ne présente pas le nom du site deleter.
Et quand je retourne voir les sites en attente, il n'a pas bougé....
Gribouille26
C'est quand même domage de ne pas pouvoir avertir les sites qu'on refuse... :nono:
J'ai posé la question sur leur forum...

Gribouille
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.