mmoussouni

Inscris le 13/11/2009 à 13:40

Ses derniers messages sur les forums

mmoussouni
le 19/01/2010 à 09:21
caractères spéciaux
Pour faire plus simple, j'écris normalement et ça écrit comme ça :
Si vous avez des questions à me poser, une amélioration possible ou un rapport de bug (surtout ça), répondez svp à ce sujet.
J'avoue que je bloque totalement... smiley
Pour vous aider :
c'est le même code que sur le comment faire à un détail prêt : le nom de l'auteur est directement le login du connecté mais même avant que je fasse la modification ça ne marchai pas. Ca m'étonnerai que ça vienne de LA GLOBULE mais je pense surtout à de l'encodage ou quelque chose comme ça... smiley

<?php
// on teste si le formulaire a été soumis
if (isset ($_POST['go']) && $_POST['go']=='Poster') {
// on teste la déclaration de nos variables
if (!isset($_POST['titre']) || !isset($_POST['message'])) {
$erreur = 'Les variables n&#233;cessaires au script ne sont pas définies. Veuillez retaper vos donn&#233;es svp.';
}
else {
// on teste si les variables ne sont pas vides
if (empty($_POST['titre']) || empty($_POST['message'])) {
$erreur = 'Au moins un des champs est vide.';
}

// si tout est bon, on peut commencer l'insertion dans la base
else {
// on se connecte à notre base
include 'connect_bdd.php';

// on calcule la date actuelle
$date = date("Y-m-d H:i:s");

// préparation de la requête d'insertion (pour la table forum_sujets)
$sql = 'INSERT INTO forum_sujets VALUES("", "'.mysql_escape_string($_SESSION['login']).'", "'.mysql_escape_string($_POST['titre']).'", "'.$date.'")';

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

// on recupère l'id qui vient de s'insérer dans la table forum_sujets
$id_sujet = mysql_insert_id();

// lancement de la requête d'insertion (pour la table forum_reponses
$sql = 'INSERT INTO forum_reponses VALUES("", "'.mysql_escape_string($_SESSION['login']).'", "'.mysql_escape_string($_POST['message']).'", "'.$date.'", "'.$id_sujet.'")';

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

// on ferme la connexion à la base de données
mysql_close();

// on redirige vers la page d'accueil
header('Location: forum.php');

// on termine le script courant
exit;
}
}
}
?>
<html>
<head>
<title>Insertion d'un nouveau sujet</title>
</head>

<body>

<!-- on fait pointer le formulaire vers la page traitant les données -->
<form action="insert_sujet.php" method="post">
<table>
<tr><td>
<span class="gras">Titre :</span>
</td><td>
<input type="text" name="titre" maxlength="50" size="50" value="<?php if (isset($_POST['titre'])) echo htmlentities(trim($_POST['titre'])); ?>">
</td></tr><tr><td>
<span class="gras">Message :</span>
</td><td>
<textarea name="message" cols="50" rows="10"><?php if (isset($_POST['message'])) echo htmlentities(trim($_POST['message'])); ?></textarea>
</td></tr><tr><td><td align="right">
<input type="submit" name="go" value="Poster">
</td></tr></table>
</form>
<?php
// on affiche les erreurs éventuelles
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
<a href="forum.php">Retour à l'accueil du forum</a>
</body>
</html>
LDM
mmoussouni
le 14/01/2010 à 13:52
caractères spéciaux
Tout se complique dans le forum. C'est tellement une horreur smiley que je vous laisse voir par vous même :

La page d'acceuil

Si vous ne voulez pas vous inscrire,

login : temp
password : visitor

C'est dans la partie forum.

Merci encore à LA GLOBULE!! smiley
LDM
mmoussouni
le 13/01/2010 à 11:03
caractères spéciaux
Comment faire un é/à/ù/ç/è/ê/É/... en html ? le navigateur affiche parfois des trucs chinois, des smiley, une série de lettres bizarres,...

Je sais qu'il faut taper une chaîne de caractères mais laquelle???
LDM
mmoussouni
le 13/01/2010 à 11:00
problème de cours
C bon j'ai trouvé. Si l'on regarde la ligne (BB-code) 47, on lance une requete sql.

Ligne 41-42, je me connecte à ma db et c'est pas étonnant que ça marche pas.

Par contre, je comprend pas pourquoi il m'indique erreur de SYNTAXE comme quoi il y a un ? inattendu... Surtout qu'il n'y en a pas dans les parages!!!

Merci tout de même pour ton attention : veillez jusqu'à minuit tous les soirs smiley (ou presque) pour nous répondre, ça, c'est être un bon webmaster!! smileysmiley
LDM
mmoussouni
le 12/01/2010 à 08:33
problème de cours
Si l'on en croit ton BB-code, la ligne est vide. Le serveur ne puce pas mes lignes et le message d'erreur m'indique juste le numéro de ligne. Je ne sais donc pas précisément laquelle c'est. Je sais que c'est souvent au-dessus mais... où??? avec quelques adaptations type : include 'connect_bdd.php'; c'est le code du cours.
LDM
mmoussouni
le 08/01/2010 à 08:52
Modération du premier message.
c'est vrai que c'est embêtant smiley . Il aurait fallu un petit bouton smiley en haut de chaque prise de parole pour que tout le monde puisse vous informer en cas de problème. Ca dépose un lien sur une page privé que seul les modérateur puisse accéder. Et que vous ayez un droit de véto! Evidemment. Cela ne me dérangerait pas de vous aider même si mon aide sera un peu superficielle... C'est tout de même une très bonne idée que de mettre un petit panneau, je trouve.
Bye smiley et bonne année à tous smiley
LDM
mmoussouni
le 07/01/2010 à 13:53
problème de cours
Voici le code du cours sur la messagerie :

<?php
session_start();
// on vérifie toujours qu'il s'agit d'un membre qui est connecté
if (!isset($_SESSION['login'])) {
// si ce n'est pas le cas, on le redirige vers l'accueil
header ('Location: index.php');
exit();
}

// on teste si le formulaire a bien été soumis
if (isset($_POST['go']) && $_POST['go'] == 'Envoyer') {
if (empty($_POST['destinataire']) || empty($_POST['titre']) || empty($_POST['message'])) {
$erreur = 'Au moins un des champs est vide.';
}
else {
$base = mysql_connect ('serveur', 'login', 'password');
mysql_select_db ('nom_base', $base);

// si tout a été bien rempli, on insère le message dans notre table SQL
$sql = 'INSERT INTO messages VALUES("", "'.$_SESSION['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: membre.php');
exit();
}
}
?>

<html>
<head>
<title>Espace membre</title>
</head>

<body>
<a href="membre.php">Retour à l'accueil</a><br /><br />
Envoyer un message :<br /><br />

<?php
$base = mysql_connect ('serveur', 'login', 'password');
mysql_select_db ('nom_base', $base);

// on prépare une requete SQL selectionnant tous les login des membres du site en prenant soin de ne pas selectionner notre propre login, le tout, servant à alimenter le menu déroulant spécifiant le destinataire du message
$sql = 'SELECT membre.login as nom_destinataire, membre.id as id_destinataire FROM membre WHERE id <> "'.$_SESSION['id'].'" ORDER BY login ASC';
// on lance notre requete SQL
$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="envoyer.php" method="post">
Pour :<select name="destinataire">
<?php
// on alimente le menu déroulant avec les login des différents membres du site
while ($data = mysql_fetch_array($req)) {
echo '<option value="' , $data['id_destinataire'] , '">' , stripslashes(htmlentities(trim($data['nom_destinataire']))) , '</option>';
}
?>
</select><br />
Titre : <input type="text" name="titre" value="<?php if (isset($_POST['titre'])) echo stripslashes(htmlentities(trim($_POST['titre']))); ?>"><br />
Message : <textarea name="message"><?php if (isset($_POST['message'])) echo stripslashes(htmlentities(trim($_POST['message']))); ?></textarea><br />
<input type="submit" name="go" value="Envoyer">
</form>
<?php
}
mysql_free_result($req);
mysql_close();
?>
</select>

<br /><br /><a href="deconnexion.php">Déconnexion</a>
<?php
// si une erreur est survenue lors de la soumission du formulaire, on l'affiche
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html>


Problème :
Parse error: syntax error, unexpected '?' in /data/members/free/multimania/fr/m/m/o/mmoussouniphp/htdocs/index.php on line 49

Tout le monde a le droit de faire des erreur!!!

Merci d'avance tout de même.
LDM
mmoussouni
le 04/12/2009 à 15:11
Erreur de syntaxe
Désolé mais ca change encore=(. Les 2 autres problemes sont, par contre, résolus^^.
Erreur : Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /data/members/free/multimania/fr/m/m/o/mmoussouniphp/htdocs/log_in.php on line 31
<?php
include ('connect_base.php');

//Vérification de la présence des cookies
if(isset ($_COOKIE['LoginSurMMoussouniPHP']) && isset ($_COOKIE['PwdSurMMoussouniPHP']))
{
$sql = $_COOKIE['LoginSurMMoussouniPHP'];
$req = mysql_query ('SELECT pwd FROM connexion_liste WHERE login ="'.$sql.'"') or die ('Erreur SQL ! <br />'.$sql.'<br />'.mysql_error ());
$ReqData = mysql_fetch_array ($req);
mysql_free_result ($req);

//Test d'identification par cookies
if($ReqData['pwd'] == $_COOKIE['PwdSurMMoussouniPHP'])
{
session_start();
$_SESSION['login'] = $_COOKIE['LoginSurMMoussouniPHP'];
$_SESSION['pwd'] = $_COOKIE['PwdSurMMoussouniPHP'];
echo 'Vous êtes identifié grâce à vos cookies. REDIRECTION en cours...';
header ('location: Compte_Membre.php');
}
}
elseif (isset ($_POST['login']) && isset ($_POST['pwd']))
{
$sql = 'SELECT pwd FROM connexion_liste WHERE login ="'.$_POST['login']."';
$req = mysql_query ($sql) or die ('Erreur SQL ! <br />'.$sql.'<br />'.mysql_error());
$ReqData = mysql_fetch_array ($req);
mysql_free_result ($req);
mysql_close ();

//Test d'identification par formulaire
if ($ReqData[ 'pwd'] == $_POST[ 'pwd'])
{
//Démarrage de session puis enregistrement des variables
session_start ();
$_SESSION[ 'login'] = $_POST[ 'login'];
$_SESSION[ 'pwd'] = $_POST[ 'pwd'];

//1an en secondes
$time = 31536000

//envoie des cookies
setcookie ("LoginSurMMoussouniPHP",$_SESSION[ 'login'],time () + $time);
setcookie ("PwdSurMMoussouniPHP",$_SESSION[ 'pwd'],time () + $time);

echo 'Vous êtes identifié grâce au formulaire. REDIRECTION en cours...';
header ('location: Compte_Membre.php');
}
else
{
//visiteur non-reconnu
echo '<body onLoad="alert(\'membre non reconnu:ressaisissez vos identifiants ou inscrivez-vous.\')">';
echo '<meta http-equiv="refresh" content="0;URL=connect.html">';
}
else
{
echo '<body onLoad="alert(\Vos identifiants n'ont pas été saisi : ressaisissez-les.\')">';
echo '<meta http-equiv="refresh" content="0;URL=connect.html">';
}
}
?>
LDM
LoadingChargement en cours