Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les forums > Site Web > PHP > Big tuto sur les forums > Lecture du sujet

Big tuto sur les forums

comment créer un forum

Vous devez être inscrit pour pouvoir poster des messages

Page : Précédente  1  2  3  ...  119  120  121  122  123  124  125  ...  139  140  141  142  Suivante
Auteur Message
1 visiteur sur ce sujet (1 anonyme)
Page : Précédente  1  2  3  ...  119  120  121  122  123  124  125  ...  139  140  141  142  Suivante
Hors ligne Clicky # Posté le 20/09/2008 à 00:40:35
Mais heu ! chu pas un gars !
Avatar
Groupe : Membres
Reprise du dernier message de la page précédente :
Ton code :
Code : PHP
1
2
3
4
<?php
$nomavatar = str_replace(' ',' ',$avatar).".".$extension_upload;
$avatar = "images/avatars/".str_replace(' ',' ',$avatar).".".$extension_upload;
?>

L'original :
Code : PHP
1
2
3
4
<?php
$nomavatar = str_replace(' ','',$avatar).".".$extension_upload;
$avatar = "./images/avatars/".str_replace(' ','',$avatar).".".$extension_upload;
?>

Je viens de regarder le code original du tuto et il n'y a pas d'espace entre les deux secondes apostrophes, juste avant $avatar, dans les parenthèses de str_replace(), ça a peut-être son importance (ça ne m'étonnerait pas en tout cas, mais je ne peux pas en être certaine, je n'ai pas essayé, j'utilise un autre script pour l'upload de l'avatar).
Autre chose, le $_SESSION['level'] est à 2, pas à 1.

Et enfin, dans ton code comme dans l'original, c'est bizarre qu'il n'y aie pas d'enregistrement de l'id du membre dans la requête... Il ne peut donc pas s'enregistrer dans le $_SESSION['id'] :o .
Édité le 20/09/2008 à 00:44:17 par Clicky

Clicky Image utilisateur
"Vous répondez pas Sire ?... Non, quand j'comprends pas, j'réponds pas..." ©Perceval et Arthur.
(Un dictionnaire, c'est bien pour connaître l'orthographe des mots. Les apostrophes sont utiles. La ponctuation, holala la ponctuation ! Mais, c'est une chose magnifique !... Pensez-y).
 
Hors ligne Eldorai # Posté le 20/09/2008 à 11:01:54
Daaaaaaaaaaaah!
Avatar
Groupe : Membres
Bonjour j'ai un problème sur la création des catégories dans l'administration.
sur la page adminok.php.
la requête de création des catégorie:

Code : PHP
1
2
3
4
5
<?php
$titre = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
        
mysql_query("INSERT INTO forum_categorie (cat_nom) 
VALUES('".$titre."')") or die (mysql_error());


me ressort une erreur "Duplicate entry '0' for key 2". Et bien sûr ma catégorie n'est pas créé.
Qu'est ce que c'est que ces erreurs? Je n'ai jamais vue ça avant.
J'ai essayé en écrivant tout les champs dans la requête, et en laissant les champs de VALUES vides. Mais même erreur.

Y'a pas de problèmes, que des solutions! :-°
Le seul problème c'est que google les trouve pas toutes!
or exit (mysql_error())


 
Hors ligne MmeWood # Posté le 20/09/2008 à 11:14:47
Peace & Love ^^
Avatar
Groupe : Membres
Tu as une clé PRIMAIRE (ou UNIQUE) sur ta table et tu essaies de rentrer deux fois la même clé primaire. Or, par définition, une clé primaire est unique ET non nulle.

Ca arrive souvent quand le champ est de type TYNINT. La limite étant de 127.
Édité le 20/09/2008 à 11:15:32 par MmeWood
Hors ligne Eldorai # Posté le 20/09/2008 à 12:12:39
Daaaaaaaaaaaah!
Avatar
Groupe : Membres
ok, j'ai réglé le problème dans phpmyadmin, en supprimant le champ cat_ordre de l'index. Il n'est donc plus unique.


Y'a pas de problèmes, que des solutions! :-°
Le seul problème c'est que google les trouve pas toutes!
or exit (mysql_error())


 
Hors ligne MmeWood # Posté le 20/09/2008 à 12:20:42
Peace & Love ^^
Avatar
Groupe : Membres
Ca ne résoudra pas ton problème comme il faut.

Ce n'est pas de cette façon qu'il fallait raisonner. Il fallait revoir le code.

Si le champ est indexé ce n'est pas pour des prunes. Ce champ indique l'ordre d'affichage des catégories donc 2 catégories ne peuvent avoir le même numéro.
Édité le 20/09/2008 à 12:21:48 par MmeWood
Hors ligne Eldorai # Posté le 20/09/2008 à 18:25:49
Daaaaaaaaaaaah!
Avatar
Groupe : Membres
ok... le code est quand même tiré du tuto, donc je veux bien l'indexer. Mais comment régler le problème alors? Je patauge bien là...

Y'a pas de problèmes, que des solutions! :-°
Le seul problème c'est que google les trouve pas toutes!
or exit (mysql_error())


 
Hors ligne MmeWood # Posté le 20/09/2008 à 21:06:23
Peace & Love ^^
Avatar
Groupe : Membres
Ce n'est pas parce que c'est tiré du tuto qu'il faut le prendre pour argent comptant. Des erreurs de syntaxe, des erreurs de conception aussi peuvent s'y trouver.
Faut pas oublier que c'est un membre, donc un humain qui a écrit ce tuto.
Et personne n'est infaillible.

La structure du code donc n'est pas bonne et doit être à revoir.
Hors ligne rom1504 # Posté le 20/09/2008 à 21:47:27
Groupe : Membres
Citation : MmeWood
Faut pas oublier que c'est un membre, donc un humain qui a écrit ce tuto.
Par contre si c'était un admin ça ne serait pas un humain :°, quoi alors m@teo21 est un alien :p ?

Mon portfolio - client_irc : mon client irc - Présentation sur le sdz de ce client irc - vraiCalculatrice : une calculatrice qui permet d'effectuer vos calculs en une seule fois
 
Hors ligne overtux # Posté le 23/09/2008 à 21:51:37
Groupe : Membres
Qui a réussi a faire le tuto?

Image utilisateur Discuter avec moi directement sur msn en clickant sur mon statut.
 
Hors ligne viki53 # Posté le 23/09/2008 à 21:57:49
Meuh !
Avatar
Groupe : Membres
Euh moi...

En l'adaptant à mon site et en l'améliorant à ma façon bien sûr. ^^
 
Hors ligne MmeWood # Posté le 23/09/2008 à 23:41:46
Peace & Love ^^
Avatar
Groupe : Membres
Je suis en train. Enfin je reprend les codes mais je modifie énormément vu que je n'utilise pas la même architecture du site ni le même système de droit. Enfin j'arrange à ma sauce quoi. Mais en bonne faignante que je suis, je prend son tuto comme base.
Hors ligne rocawear # Posté le 24/09/2008 à 00:47:44
WebDev - Développeur web
Avatar
Groupe : Membres
Moi j'ai tenter mais avant la mise a jour ( yavais plusieur bugs ) donc j'ai laisser tomber pour en créer un a partir de rien et en poo.

Apprenez a lire la doc s.v.p! :-°
 
Hors ligne overtux # Posté le 24/09/2008 à 00:58:30
Groupe : Membres
Pareil que toi, j'ai abondonné.
Qui veut partager ses sources avec moi?
Par mp, pleaze

Image utilisateur Discuter avec moi directement sur msn en clickant sur mon statut.
 
Hors ligne Clicky # Posté le 24/09/2008 à 11:46:21
Mais heu ! chu pas un gars !
Avatar
Groupe : Membres
Citation : overtux
Qui a réussi a faire le tuto?

Citation : viki53
Euh moi...

En l'adaptant à mon site et en l'améliorant à ma façon bien sûr.

De même, mais je n'ai encore rien mis en ligne parce que je n'ai pas fini le développement de tout le site.

Clicky Image utilisateur
"Vous répondez pas Sire ?... Non, quand j'comprends pas, j'réponds pas..." ©Perceval et Arthur.
(Un dictionnaire, c'est bien pour connaître l'orthographe des mots. Les apostrophes sont utiles. La ponctuation, holala la ponctuation ! Mais, c'est une chose magnifique !... Pensez-y).
 
Hors ligne viki53 # Posté le 24/09/2008 à 12:33:40
Meuh !
Avatar
Groupe : Membres
Perso je l'ai fait avec l'ancienne version.

Et aucun bug à signaler! :D

Suffit de connaître un peu et on s'en sort facilement. ^^

Après je suis un peu comme MmeWood, j'utilise pas les mêmes systèmes (architecture, fonctions, etc.). :)

Et pour répondre à overtux, je pense pas que quelqu'un acceptera car il est bien dit dans le tuto (et il en va de même pour tous les autres tutos) que les sources ne servent à rien si on ne les étudie pas. General Vans n'est pas forcé de nous fournir un système qui fonctionne, il nous indique juste des pistes pour y arriver...
 
Hors ligne overtux # Posté le 24/09/2008 à 13:26:18
Groupe : Membres
Les sources que vous me donnerez serviront a les comparer avec les miennes et corriger les beugs ect.....

Image utilisateur Discuter avec moi directement sur msn en clickant sur mon statut.
 
Hors ligne viki53 # Posté le 24/09/2008 à 17:36:10
Meuh !
Avatar
Groupe : Membres
Bah comparer, à part pour pomper je vois pas à quoi ça sert si tu connais le PHP... :-°

Et les bugs bah soit t'en as et tu les postes ici (ou tu cherches la réponse sur le topic ou autre), soit t'en as pas et là je vois pas l'intérêt. o_O
 
Hors ligne aRk@ng3 # Posté le 26/09/2008 à 21:31:14
Avatar
Groupe : Membres
bonsoir je viens poster car j'ai un petit problème de compréhension concernant les profils ...

je tient à préciser que je m'aide de ce tuto pour la création d'un site web, et à la lecture de la citation ci-dessous, j'ai eu une sèche !

Citation : Pas de titre
Citation : General Vans
Donc on a besoin de deux variables : ainsi, l'adresse du profil d'un membre se présentera toujours comme ceci :

/voirprofil.php?m=3&action=consulter


ce qui me pose souci, c'est le "m=3"...
je ne comprend pas... :-°
quelqu'un pourrais t-il tenter de m'expliquer??

j'ai bien compris que "3" été l'id du membre dont on affiche le profil mais la variable "m" ne sera pas toujours = à 3 ...
comment faire pour que cette variable ne soit pas fixé ?

Merci d'avance pour vos futur réponses.
et j'éspère avoir été assez claire... :D
Hors ligne Droup # Posté le 26/09/2008 à 21:40:55
Groupe : Membres
Pour te répondre je vais tout simplement utiliser une liste de membres.
Tout ce que tu as à faire c'est de faire sur chaque pseudo un lien, avec l'adresse "voirprofil.php?action=consulter&m=3" en mettant l'id du membre en question pour la variable m.

Voici à quoi ressemblerai le script d'une liste des membres(Juste la boucle) :
Code : PHP
1
2
3
4
<?php
while($membre = mysql_fetch_array($donnees_membres))
     echo '<a href="voirprofil.php?action=consulter&m='.$membre['id'].'">'.$membre['pseudo'].'</a><br />';
?>


Ainsi un membre cliquant sur le pseudo d'un membre aura accès au profil du membre en question.
Hors ligne aRk@ng3 # Posté le 26/09/2008 à 21:45:18
Avatar
Groupe : Membres
ok je te remercie pour ton aide. ^^
Hors ligne Nini # Posté le 28/09/2008 à 11:17:48
Always and forever
Avatar
Groupe : Membres
Une petite question dans la table forum_post, que contient post_createur ? Ca contient l'id du membre ayant posté le message ?

Merci d'avance ! :)

Il n'y que dans le dictionnaire que réussir vient avant le travail !

Image utilisateur




 
Hors ligne viki53 # Posté le 28/09/2008 à 13:18:05
Meuh !
Avatar
Groupe : Membres
@Nini > Exactement. ;)
 
Hors ligne lucas6585 # Posté le 28/09/2008 à 19:18:03
Zero et fier de l'être
Avatar
Groupe : Membres
je vien de finir le forum sans probleme,mais j'ai des bug sur un peux pres toute les page lol

j'ai une erreur sur la page d'index :
Code : PHP
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
<?php
session_start();
include("includes/header.php");
?>
<body>
<div id="banniere"></div>
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("teste");
?>
<div id="corps_forum">
<?php
// On indique où l'on se trouve
echo'<a href ="./index.php">Index du forum</a>';

// Puis on commence notre if

if (isset($_SESSION['pseudo'])) // Si le membre est connecté
{
        //Voici les options
        echo'<p>Vous êtes connecté en tant que
        <a href="./voirprofil.php?m='.intval($_SESSION['id']).'&amp;action=consulter">
        '.stripslashes(htmlspecialchars($_SESSION['pseudo'])).'</a><br />
        <a href="./voirprofil.php?action=modifier">
        Modifier mon profil</a><br />
        <a href="./messagesprives.php">
        Consulter mes messages privés</a><br />
        <a href ="./deconnexion.php">Se déconnecter</a><br /></p>';

}


// Sinon, on propose de se connecter ou de s'enregistrer
else
{
        echo'<p>Vous n êtes pas connecté <br />
        <a href="./connexion.php">Se connecter</a><br />
        <a href="./register.php">Pas encore inscrit ?</a><br /></p>';
}
?>
<h1>Forum Exemple</h1><br /><br />

<?php
//Initialisation de deux variables
$totaldesmessages = 0;
$categorie = NULL;
//Déterminons le niveau d'accès du visiteur
$level = (isset($_SESSION['level']))?intval($_SESSION['level']):1;

//Cette requete permet d'obtenir tout sur le forum
$requete2 = mysql_query('
SELECT cat_id, cat_nom, 
forum_forum.forum_id, forum_name, forum_desc, forum_post, forum_topic, auth_view, forum_topic.topic_id,  forum_topic.topic_post, post_id, post_time, post_createur, membre_pseudo, 
membre_id 
FROM forum_categorie
LEFT JOIN forum_forum ON forum_categorie.cat_id = forum_forum.forum_cat_id
LEFT JOIN forum_post ON forum_post.post_id = forum_forum.forum_last_post_id
LEFT JOIN forum_topic ON forum_topic.topic_id = forum_post.topic_id
LEFT JOIN forum_membres ON forum_membres.membre_id = forum_post.post_createur
WHERE auth_view < '.$level.' 
ORDER BY cat_ordre, forum_ordre DESC');
?>
 <?php
//Dans un premier temps, on vérifie s'il y a des forums à lister
if (mysql_num_rows($requete2) < 1)
{
        echo'Il n y a pas de forum :o 
        Allez en ajouter avec le panneau d administration';
}
else
{
?>
<table>
<?php
        //Début de la boucle
        while($data2 = mysql_fetch_assoc($requete2))
        {
        //On affiche chaque catégorie
        if( $categorie != $data2['cat_id'] )
        {
        //Si c'est une nouvelle catégorie on l'affiche
       
                $categorie = $data2['cat_id'];
                ?>
                <tr>
                <th></th>
                <th class="titre"><strong><?php echo stripslashes(htmlspecialchars($data2['cat_nom'])); ?>
                </strong></th>             
                <th class="nombremessages"><strong>Sujets</strong></th>       
                <th class="nombresujets"><strong>Messages</strong></th>       
                <th class="derniermessage"><strong>Dernier message</strong></th>   
                </tr>
                <?php
               
         }

         //Ici, on met le contenu de chaque catégorie
?>
<?php
if (verif_auth($data2['auth_view']))
{
//Affichage des forums
?>
<?php
// Ce super echo de la mort affiche tous
         // les forums en détail : description, nombre de réponses etc...

         echo'<tr><td><img src="./images/message.gif" alt="message" /></td>
         <td class="titre"><strong>
         <a href="./voirforum.php?f='.$data2['forum_id'].'">
         '.stripslashes(htmlspecialchars($data2['forum_name'])).'</a></strong>
         <br />'.nl2br(stripslashes(htmlspecialchars($data2['forum_desc']))).'</td>
         <td class="nombresujets">'.$data2['forum_topic'].'</td>
         <td class="nombremessages">'.$data2['forum_post'].'</td>';

         // Deux cas possibles :
         // Soit il y a un nouveau message, soit le forum est vide
         if (!empty($data2['forum_post']))
         {
         //Selection dernier message
	 $nombreDeMessagesParPage = 15;
         $nbr_post = $data2['topic_post'] +1;
	 $page = ceil($nbr_post / $nombreDeMessagesParPage);
		 
         echo'<td class="derniermessage">
         '.date('H\hi \l\e d/M/Y',$data2['post_time']).'<br />
         <a href="./voirprofil.php?m='.stripslashes(htmlspecialchars($data2['membre_pseudo'])).'&amp;action=consulter">'.$data2['membre_pseudo'].'  </a>
               <a href="./voirtopic.php?t='.$data2['topic_id'].'&amp;page='.$page.'#p_'.$data2['post_id'].'">
               <img src="./images/go.gif" alt="go" /></a></td></tr>';
         }
         else
         {
               echo'<td class="nombremessages">Pas de message</td></tr>';
         }

         //Cette variable stock le nombre de message, on la met à jour
         $totaldesmessages += $data2['forum_post'];

         //On ferme notre boucle et nos balises
         } //fin de la boucle
echo '</table>';

} //fin du else
?>
<?php
//Le pied de page ici :
echo'
<hr />
<div>
<h2>
Qui est en ligne ?
</h2>
';



$requete3 = mysql_query("SELECT membre_id FROM forum_membres");
$TotalDesMembres = mysql_num_rows($requete3);

$requete4 = mysql_query("SELECT membre_pseudo, membre_id FROM forum_membres ORDER BY membre_id DESC LIMIT 0, 1");
$data4 = mysql_fetch_assoc($requete4);
$derniermembre = stripslashes(htmlspecialchars($data4['membre_pseudo']));

echo'<p>Le total des messages du forum est <strong>'.$totaldesmessages.'</strong>.<br />';
echo'Le site et le forum comptent <strong>'.$TotalDesMembres.'</strong> membres.<br />';
echo'Le dernier membre est <a href="./voirprofil.php?m='.$data4['membre_id'].'&amp;action=consulter">'.$derniermembre.'</a>.</p>';
?>
</div>
</div>
</body>
</html>


l'erreur est a la ligne 171

Soferi Evolution.
Fais - Pas Fais
| | | | | | | | | | | | | | | | | | | | 10%sur 100
Lucas
 
Hors ligne JaKhris # Posté le 28/09/2008 à 20:18:32
Wait & See
Avatar
Groupe : Membres
C'est pratique de nous avoir dit quel message la console (ou jesaispascommentappellerça) d'erreur...

Mes sites : JAKPRO ~ URPRO ~ page Flickr
XHTML, CSS, JS, PHP, MySQL, Graphics, Music & Video Games : This is living ! =D
 
Hors ligne lucas6585 # Posté le 28/09/2008 à 20:31:43
Zero et fier de l'être
Avatar
Groupe : Membres
Parse error: parse error in c:\program files\easyphp1-8\www\forum\index.php on line 171
Édité le 28/09/2008 à 20:32:13 par lucas6585

Soferi Evolution.
Fais - Pas Fais
| | | | | | | | | | | | | | | | | | | | 10%sur 100
Lucas
 
Hors ligne pathou # Posté le 28/09/2008 à 20:39:23
Avatar
Groupe : Membres
tu n'a pas mis le doctype etc ...

donc il te manque la premiere balise <html>
Hors ligne viki53 # Posté le 28/09/2008 à 21:02:16
Meuh !
Avatar
Groupe : Membres
@pathou > PHP ne renvoit pas d'erreur sur le HTML. :-°

@lucas6585 > Dis-nous à quelle ligne ça correspond: ce que contient la ligne en question, c'est plus facile pour se repérer. ;)
 
Hors ligne lucas6585 # Posté le 28/09/2008 à 21:04:16
Zero et fier de l'être
Avatar
Groupe : Membres
elle contient </html>

Soferi Evolution.
Fais - Pas Fais
| | | | | | | | | | | | | | | | | | | | 10%sur 100
Lucas
 
Hors ligne viki53 # Posté le 28/09/2008 à 21:41:04
Meuh !
Avatar
Groupe : Membres
Bah alors revois tes bases du php. :-°

Parce que ça veut clairement dire que t'as une action PHP qui n'est pas finie.

Donc vérifies que tes if, tes else et tes switch sont bien fermés...
 
Hors ligne lucas6585 # Posté le 30/09/2008 à 18:58:00
Zero et fier de l'être
Avatar
Groupe : Membres
j'ai un problemes avec se code <?php echo'stripslashes(htmlspecialchars($data2['cat_nom']))'; ?>

Soferi Evolution.
Fais - Pas Fais
| | | | | | | | | | | | | | | | | | | | 10%sur 100
Lucas
 
Hors ligne MmeWood # Posté le 30/09/2008 à 18:59:22
Peace & Love ^^
Avatar
Groupe : Membres
Et c'est quoi le problème ?
On peut pas deviner si tu ne nous expliques pas clairement ton problème.
On n'est pas dans ta tête et on en voit pas ton code.

Retour au forum "PHP" ou à la liste des forums

Vous devez être inscrit pour pouvoir poster des messages

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 87 Zéros connectés | Requêtes SQL 7 requêtes | Temps de génération de la page : Total (SQL) 0.2354s (0.2186s)