par
cris84 » 18 janv. 2014, 14:12
Bonjour,
je voudrais afficher un formulaire de contact dans une liste de membre mais exclure celui qui est connecté (formulaire non visible si la personne est connecté).
J'ai essayé avec
<?php if (!isset($_SESSION[$prefix.'logged']) { ?>
mais sans succès.
Je vous donne le code en entier si vous pouvez m'orienter :
<?php
if (isset($_SESSION[$prefix.'logged']) && $_SESSION[$prefix.'logged'] === true)
{
designhaut($lang['profil_d_un_membre']);
$id = intval($_GET['id']);
$nbre_membres = mysql_query('SELECT COUNT(id) AS nbre_membres FROM '.$prefix.'membres WHERE id='.$id)or die(mysql_error());
$nbre_membres = mysql_result($nbre_membres, 0, 'nbre_membres');
<h1>Lui envoyer un message :</h1>
<?php
if (isset($_POST['go']) && $_POST['go'] == 'Envoyer') {
if (empty($_POST['destinataire']) || empty($_POST['titre']) || empty($_POST['message'])) {
$erreur = '<div class="alert alert-error">Au moins un des champs est vide.</div>';
}
else {
// si tout a été bien rempli, on insère le message dans notre table SQL
$sql = 'INSERT INTO messages VALUES("", "'.$_SESSION[$prefix.'id'].'", "'.$_POST['destinataire'].'", "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_POST['titre']).'", "'.mysql_escape_string($_POST['message']).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
header('Location: membres.php');
exit();
}
}
?>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
$sql = 'SELECT membres.pseudo as nom_destinataire, membres.id as id_destinataire FROM membres WHERE id <> "'.$_SESSION[$prefix.'id'].'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$nb = mysql_num_rows ($req);
if ($nb == 0) {
// si aucun membre n'a été trouvé, on affiche tout simplement aucun formulaire
echo 'Vous êtes le seul membre inscrit.';
}
else {
// si au moins un membre qui n'est pas nous même a été trouvé, on affiche le formulaire d'envoie de message
?>
<form action="" method="post">
<p>
Pour : <?php echo $donnees['pseudo']; ?><p> <input type="hidden" name="destinataire" value="<?php echo $donnees['id']; ?>">
Titre : <label for"titre"><input name="titre" type="text" value="<?php if (isset($_POST['titre'])) echo stripslashes(htmlentities(trim($_POST['titre']))); ?>" size="50">
</label>
<br>
<br />
Message : <label for"message"><textarea name="message" cols="50" rows="10"><?php if (isset($_POST['message'])) echo stripslashes(htmlentities(trim($_POST['message']))); ?></textarea>
</label>
<input type="submit" name="go" value="Envoyer">
</p>
</form>
<?php
}
mysql_free_result($req);
mysql_close();
?>
Bonjour,
je voudrais afficher un formulaire de contact dans une liste de membre mais exclure celui qui est connecté (formulaire non visible si la personne est connecté).
J'ai essayé avec [php]<?php if (!isset($_SESSION[$prefix.'logged']) { ?>[/php] mais sans succès.
Je vous donne le code en entier si vous pouvez m'orienter :
[php]<?php
if (isset($_SESSION[$prefix.'logged']) && $_SESSION[$prefix.'logged'] === true)
{
designhaut($lang['profil_d_un_membre']);
$id = intval($_GET['id']);
$nbre_membres = mysql_query('SELECT COUNT(id) AS nbre_membres FROM '.$prefix.'membres WHERE id='.$id)or die(mysql_error());
$nbre_membres = mysql_result($nbre_membres, 0, 'nbre_membres');
<h1>Lui envoyer un message :</h1>
<?php
if (isset($_POST['go']) && $_POST['go'] == 'Envoyer') {
if (empty($_POST['destinataire']) || empty($_POST['titre']) || empty($_POST['message'])) {
$erreur = '<div class="alert alert-error">Au moins un des champs est vide.</div>';
}
else {
// si tout a été bien rempli, on insère le message dans notre table SQL
$sql = 'INSERT INTO messages VALUES("", "'.$_SESSION[$prefix.'id'].'", "'.$_POST['destinataire'].'", "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_POST['titre']).'", "'.mysql_escape_string($_POST['message']).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
header('Location: membres.php');
exit();
}
}
?>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
$sql = 'SELECT membres.pseudo as nom_destinataire, membres.id as id_destinataire FROM membres WHERE id <> "'.$_SESSION[$prefix.'id'].'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$nb = mysql_num_rows ($req);
if ($nb == 0) {
// si aucun membre n'a été trouvé, on affiche tout simplement aucun formulaire
echo 'Vous êtes le seul membre inscrit.';
}
else {
// si au moins un membre qui n'est pas nous même a été trouvé, on affiche le formulaire d'envoie de message
?>
<form action="" method="post">
<p>
Pour : <?php echo $donnees['pseudo']; ?><p> <input type="hidden" name="destinataire" value="<?php echo $donnees['id']; ?>">
Titre : <label for"titre"><input name="titre" type="text" value="<?php if (isset($_POST['titre'])) echo stripslashes(htmlentities(trim($_POST['titre']))); ?>" size="50">
</label>
<br>
<br />
Message : <label for"message"><textarea name="message" cols="50" rows="10"><?php if (isset($_POST['message'])) echo stripslashes(htmlentities(trim($_POST['message']))); ?></textarea>
</label>
<input type="submit" name="go" value="Envoyer">
</p>
</form>
<?php
}
mysql_free_result($req);
mysql_close();
?>
[/php]