Aide pour un script php
mister-gwada97one
Messages postés
110
Date d'inscription
Statut
Membre
Dernière intervention
-
mister-gwada97one Messages postés 110 Date d'inscription Statut Membre Dernière intervention -
mister-gwada97one Messages postés 110 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis en train de créer un forum grace au site de zéro, mais dan la page de vérification pour l'inscription j'ai une erreur:
Et voici le code de la page:
registerok.php
Cordialement, Kévin
Je suis en train de créer un forum grace au site de zéro, mais dan la page de vérification pour l'inscription j'ai une erreur:
Parse error: syntax error, unexpected '<' in /home/key/public_html/ch/forum/registerok.php on line 29
Et voici le code de la page:
registerok.php
<?php //Cette fonction doit être appelée avant tout code html session_start(); //On donne ensuite un titre à la page, puis on appelle notre fichier debut.php $titre = "Index du forum"; include("debut.php"); ?> <body> <div id="banniere"></div> <?php //Maintenant, on se connecte à la base de données include("identifiants.php"); mysql_connect($adresse, $nom, $motdepasse); mysql_select_db($database); $pseudo_erreur1 = NULL; $pseudo_erreur2 = NULL; $mdp_erreur = NULL; $email_erreur1 = NULL; $email_erreur2 = NULL; $msn_erreur = NULL; $signature_erreur = NULL; $avatar_erreur = NULL; $avatar_erreur1 = NULL; $avatar_erreur2 = NULL; $avatar_erreur3 = NULL; <?php //On récupère les variables $i = 0; $temps = time(); $signature = mysql_real_escape_string($_POST['signature'], ENT_QUOTES)); $pseudo = mysql_real_escape_string($_POST['pseudo']); $email = mysql_real_escape_string($_POST['email']); $msn = mysql_real_escape_string($_POST['msn']); $website = mysql_real_escape_string($_POST['website']); $localisation = mysql_real_escape_string($_POST['localisation']); $pass = md5($_POST['password']); $confirm = md5($_POST['confirm']); //Vérification du pseudo $nombrepseudo = mysql_result(mysql_query('SELECT COUNT(*) FROM forum_membres WHERE membre_pseudo = "'.$pseudo.'"'), 0); if($nombrepseudo != 0) { $pseudo_erreur1 = "Votre pseudo est déjà utilisé par un membre"; $i++; } if (strlen($pseudo) < 3 || strlen($pseudo) > 15) { $pseudo_erreur2 = "Votre pseudo est soit trop grand, soit trop petit"; $i++; } //Vérification du mdp if ($pass != $confirm || empty($confirm) || empty($pass)) { $mdp_erreur = "Votre mot de passe et votre confirmation diffèrent, ou sont vides"; $i++; } ?> <?php //Vérification de l'adresse email //Il faut que l'adresse email n'ait jamais été utilisée $nombremail = mysql_result(mysql_query('SELECT COUNT(*) FROM forum_membres WHERE membre_email = "'.$email.'"'), 0); if ($nombremail != 0) { $email_erreur1 = "Votre adresse email est déjà utilisée par un membre"; $i++; } //On vérifie la forme maintenant if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $email) || empty($email)) { $email_erreur2 = "Votre adresse E-Mail n'a pas un format valide"; $i++; } //Vérification de l'adresse MSN if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $msn) && !empty($msn)) { $msn_erreur = "Votre adresse MSN n'a pas un format valide"; $i++; } //Vérification de la signature if (strlen($signature) > 200) { $signature_erreur = "Votre signature est trop longue"; $i++; } ?> <?php //Vérification de l'avatar : if (!empty($_FILES['avatar']['size'])) { //On définit les variables : $maxsize = 10024; //Poid de l'image $maxwidth = 100; //Largeur de l'image $maxheight = 100; //Longueur de l'image $extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides if ($_FILES['avatar']['error'] > 0) { $avatar_erreur = "Erreur lors du tranfsert de l'avatar : "; } if ($_FILES['avatar']['size'] > $maxsize) { $i++; $avatar_erreur1 = "Le fichier est trop gros : (<strong>".$_FILES['avatar']['size']." Octets</strong> contre <strong>".$maxsize." Octets</strong>)"; } $image_sizes = getimagesize($_FILES['avatar']['tmp_name']); if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight) { $i++; $avatar_erreur2 = "Image trop large ou trop longue : (<strong>".$image_sizes[0]."x".$image_sizes[1]."</strong> contre <strong>".$maxwidth."x".$maxheight."</strong>)"; } $extension_upload = strtolower(substr( strrchr($_FILES['avatar']['name'], '.') ,1)); if (!in_array($extension_upload,$extensions_valides) ) { $i++; $avatar_erreur3 = "Extension de l'avatar incorrecte"; } } ?> <div id="corps_forum"> <a href ="./index.php">Index du forum</a> / <a href="./register.php">Inscription</a> <?php if ($i == 0) // Si i est vide, il n'y a pas d'erreur { echo'<h1>Inscription terminée</h1>'; echo'<p>Bienvenue '.stripslashes(htmlspecialchars($_POST['pseudo'])).' vous êtes maintenant inscrit sur le forum</p>'; echo'<p>Cliquez <a href="./index.php">ici</a> pour revenir à la page d accueil</p>'; if (isset($_FILES['avatar']['size'])) { //On déplace l'avatar $avatar = time(); $nomavatar = str_replace(' ','',$avatar).".".$extension_upload; $avatar = "./images/avatars/".str_replace(' ','',$avatar).".".$extension_upload; move_uploaded_file($_FILES['avatar']['tmp_name'],$avatar); } //On balance le tout dans notre table mysql_query(' INSERT INTO forum_membres (membre_pseudo, membre_mdp, membre_email, membre_msn, membre_siteweb, membre_avatar, membre_signature, membre_localisation, membre_inscrit, membre_derniere_visite) VALUES ("'.$pseudo.'" , "'.$pass.'" , "'.$email.'" , "'.$msn.'" , "'.$website.'" , "'.$nomavatar.'" , "'.$signature.'" , "'.$localisation.'" , "'.$temps.'" , "'.$temps.'" ) ') or die(mysql_error()); //Et on définit les variables de sessions $_SESSION['pseudo'] = $pseudo; $_SESSION['id'] = mysql_insert_id(); $_SESSION['level'] = 2; } else { echo'<h1>Inscription interrompue</h1>'; echo'<p>Une ou plusieurs erreurs se sont produites pendant l incription</p>'; echo'<p>'.$i.' erreur(s)</p>'; echo'<p>'.$pseudo_erreur1.'</p>'; echo'<p>'.$pseudo_erreur2.'</p>'; echo'<p>'.$mdp_erreur.'</p>'; echo'<p>'.$email_erreur1.'</p>'; echo'<p>'.$email_erreur2.'</p>'; echo'<p>'.$msn_erreur.'</p>'; echo'<p>'.$signature_erreur.'</p>'; echo'<p>'.$avatar_erreur.'</p>'; echo'<p>'.$avatar_erreur1.'</p>'; echo'<p>'.$avatar_erreur2.'</p>'; echo'<p>'.$avatar_erreur3.'</p>'; echo'<p>Cliquez <a href="./register.php">ici</a> pour recommencer</p>'; } mysql_close(); ?> </div> </body> </html>
Cordialement, Kévin
A voir également:
- Aide pour un script php
- Script vidéo youtube - Guide
- Easy php - Télécharger - Divers Web & Internet
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Expert php pinterest - Télécharger - Langages
32 réponses
c'est ça en faite:
http://www.key-themes.com/images/erreur5.gif
le forum est ici, il n'y a pas encore toute les pages:
http://www.key-themes.com/ch/forum
http://www.key-themes.com/images/erreur5.gif
le forum est ici, il n'y a pas encore toute les pages:
http://www.key-themes.com/ch/forum
tu a du enlever une balise d' entrée <?php juste avant la ligne qu' on voit. C' est un commentaire donc trouve cette ligne et copie moi le morceau de code ici
Voilà:
//On lance notre tableau seulement s'il y a des requêtes ! if (mysql_num_rows($requete3) > 0) { ?> <table> <tr> <th><img src="./images/annonce.gif" alt="Annonce" /></th> <th class="titre"><strong>Titre</strong></th> <th class="nombremessages"><strong>Réponses</strong></th> <th class="nombrevu"><strong>Vus</strong></th> <th class="auteur"><strong>Auteur</strong></th> <th class="derniermessage"><strong>Dernier message</strong></th> </tr>
Y ' a rien avant????
si y' a quelque chose avant, montre le moi, sinon rajoute <?php (seulement si y' a rien avant sinon conflit):
<?php
//On lance notre tableau seulement s'il y a des requêtes !
if (mysql_num_rows($requete3) > 0)
{
?>
si y' a quelque chose avant, montre le moi, sinon rajoute <?php (seulement si y' a rien avant sinon conflit):
<?php
//On lance notre tableau seulement s'il y a des requêtes !
if (mysql_num_rows($requete3) > 0)
{
?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ok,
ça commence comme ça:
ça commence comme ça:
<?php //On prend tout ce qu'on a sur les Annonces du forum $requete3 = mysql_query('SELECT forum_topic.topic_id, topic_titre, topic_createur, topic_vu, topic_post, topic_time, topic_last_post, Mb.membre_pseudo AS membre_pseudo_createur, post_createur, post_time, Ma.membre_pseudo AS membre_pseudo_last_posteur FROM forum_topic LEFT JOIN forum_membres Mb ON Mb.membre_id = forum_topic.topic_createur LEFT JOIN forum_post ON forum_topic.topic_last_post = forum_post.post_id LEFT JOIN forum_membres Ma ON Ma.membre_id = forum_post.post_createur WHERE topic_genre = "Annonce" AND forum_topic.forum_id = "'.$forum.'" ORDER BY topic_last_post DESC'); ?> //On lance notre tableau seulement s'il y a des requêtes ! if (mysql_num_rows($requete3) > 0) { ?> <table> <tr> <th><img src="./images/annonce.gif" alt="Annonce" /></th> <th class="titre"><strong>Titre</strong></th> <th class="nombremessages"><strong>Réponses</strong></th> <th class="nombrevu"><strong>Vus</strong></th> <th class="auteur"><strong>Auteur</strong></th> <th class="derniermessage"><strong>Dernier message</strong></th> </tr>
$requete3 = mysql_query('SELECT forum_topic.topic_id, topic_titre, topic_createur, topic_vu, topic_post, topic_time, topic_last_post,
Mb.membre_pseudo AS membre_pseudo_createur, post_createur, post_time, Ma.membre_pseudo AS membre_pseudo_last_posteur FROM forum_topic
LEFT JOIN forum_membres Mb ON Mb.membre_id = forum_topic.topic_createur
LEFT JOIN forum_post ON forum_topic.topic_last_post = forum_post.post_id
LEFT JOIN forum_membres Ma ON Ma.membre_id = forum_post.post_createur
WHERE topic_genre = "Annonce" AND forum_topic.forum_id = "'.$forum.'"
ORDER BY topic_last_post DESC');
?>
------------------------------------------------------------------------>>>>>>>>>RAJOUTE ICI >>><?php
//On lance notre tableau seulement s'il y a des requêtes !
if (mysql_num_rows($requete3) > 0)
{
?>
Mb.membre_pseudo AS membre_pseudo_createur, post_createur, post_time, Ma.membre_pseudo AS membre_pseudo_last_posteur FROM forum_topic
LEFT JOIN forum_membres Mb ON Mb.membre_id = forum_topic.topic_createur
LEFT JOIN forum_post ON forum_topic.topic_last_post = forum_post.post_id
LEFT JOIN forum_membres Ma ON Ma.membre_id = forum_post.post_createur
WHERE topic_genre = "Annonce" AND forum_topic.forum_id = "'.$forum.'"
ORDER BY topic_last_post DESC');
?>
------------------------------------------------------------------------>>>>>>>>>RAJOUTE ICI >>><?php
//On lance notre tableau seulement s'il y a des requêtes !
if (mysql_num_rows($requete3) > 0)
{
?>
j'ai enlevé cette ligne et il n'y a plus de probleme
//On lance notre tableau seulement s'il y a des requêtes ! if (mysql_num_rows($requete3) > 0) { ?>
en meme temps si tu enleves tout tu risques d' avoir des probleme, cette requete est necessaire, fais ce que je te dis ca ira mieux.
quand je fait comme tu dis j'ai ça:
et il y à ça à la linge:
Voici tout le code car moi je n'y comprend plus rien..
Parse error: syntax error, unexpected $end in /home/key/public_html/ch/forum/voirforum.php on line 231
et il y à ça à la linge:
</body></html>
Voici tout le code car moi je n'y comprend plus rien..
je te donne le code de toute la page:
<?php //Cette fonction doit être appelée avant tout code html session_start(); //On donne ensuite un titre à la page, puis on appelle notre fichier debut.php $titre = "Voir un forum"; include("debut.php"); ?> <body> <div id="banniere"></div> <?php //Maintenant, on se connecte à la base de données include("identifiants.php"); mysql_connect($adresse, $nom, $motdepasse); mysql_select_db($database); //On récupère la valeur de f $forum = (int) $_GET['f']; //A partir d'ici, on va compter le nombre de messages //pour n'afficher que les 25 premiers $requete1 = mysql_query("SELECT forum_name, forum_topic, auth_view, auth_topic FROM forum_forum WHERE forum_id = '".$forum."'") or die (mysql_error()); $data1 = mysql_fetch_assoc($requete1); $totalDesMessages = $data1['forum_topic'] + 1; $nombreDeMessagesParPage = 25; $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage); ?> <div id="corps_forum"> <?php echo'<a href ="./index.php">Index du forum</a> / <a href="./voirforum.php?f='.$forum.'">'.stripslashes(htmlspecialchars($data1['forum_name'])).'</a>'; 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']).'&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>'; } //Nombre de pages if (isset($_GET['page'])) { $page = intval($_GET['page']); } else { $page = 1; } //On affiche les pages 1-2-3, etc. echo '<p>Page : '; for ($i = 1 ; $i <= $nombreDePages ; $i++) { if ($i == $page) //On ne met pas de lien sur la page actuelle { echo $i; } else { echo ' <a href="voirforum.php?f='.$forum.'&page='.$i.'">'.$i.'</a>'; } } echo '</p>'; $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage; //Le titre du forum echo '<h1>'.stripslashes(htmlspecialchars($data1['forum_name'])).'</h1><br /><br />'; //Et le bouton pour poster echo'<a href="./poster.php?action=nouveautopic&f='.$forum.'"> <img src="./images/nouveau.gif" alt="Nouveau topic" title="Poster un nouveau topic" /></a>'; ?> <?php //On prend tout ce qu'on a sur les Annonces du forum $requete3 = mysql_query('SELECT forum_topic.topic_id, topic_titre, topic_createur, topic_vu, topic_post, topic_time, topic_last_post, Mb.membre_pseudo AS membre_pseudo_createur, post_createur, post_time, Ma.membre_pseudo AS membre_pseudo_last_posteur FROM forum_topic LEFT JOIN forum_membres Mb ON Mb.membre_id = forum_topic.topic_createur LEFT JOIN forum_post ON forum_topic.topic_last_post = forum_post.post_id LEFT JOIN forum_membres Ma ON Ma.membre_id = forum_post.post_createur WHERE topic_genre = "Annonce" AND forum_topic.forum_id = "'.$forum.'" ORDER BY topic_last_post DESC'); ?> <? //On lance notre tableau seulement s'il y a des requêtes ! if (mysql_num_rows($requete3) > 0) { ?> <table> <tr> <th><img src="./images/annonce.gif" alt="Annonce" /></th> <th class="titre"><strong>Titre</strong></th> <th class="nombremessages"><strong>Réponses</strong></th> <th class="nombrevu"><strong>Vus</strong></th> <th class="auteur"><strong>Auteur</strong></th> <th class="derniermessage"><strong>Dernier message</strong></th> </tr> <?php //On commence la boucle while ($data3 = mysql_fetch_assoc($requete3)) { //Pour chaque topic : //Si le topic est une annonce on l'affiche en haut //mega echo de bourrain pour tout remplir echo'<tr><td><img src="./images/annonce.gif" alt="Annonce" /></td> <td id="titre"><strong>Annonce : </strong> <strong><a href="./voirtopic.php?t='.$data3['topic_id'].'" title="Topic commencé à '.date('H\hi \l\e d M,y',$data3['topic_time']).'"> '.stripslashes(htmlspecialchars($data3['topic_titre'])).'</a></strong></td> <td class="nombremessages">'.$data3['topic_post'].'</td> <td class="nombrevu">'.$data3['topic_vu'].'</td> <td><a href="./voirprofil.php?m='.$data3['topic_createur'].' &action=consulter"> '.stripslashes(htmlspecialchars($data3['membre_pseudo_createur'])).'</a></td>'; //Selection dernier message $nombreDeMessagesParPage = 15; $nbr_post = $data3['topic_post'] +1; $page = ceil($nbr_post / $nombreDeMessagesParPage); echo '<td class="derniermessage">Par <a href="./voirprofil.php?m='.$data3['post_createur'].' &action=consulter"> '.stripslashes(htmlspecialchars($data3['membre_pseudo_last_posteur'])).'</a><br /> A <a href="./voirtopic.php?t='.$data3['topic_id'].'&page='.$page.'#p_'.$data3['post_id'].'">'.date('H\hi \l\e d M y',$data3['post_time']).'</a></td></tr>'; } ?> </table> <?php ?> <? //On prend tout ce qu'on a sur les topics normaux du forum $requete3 = mysql_query('SELECT forum_topic.topic_id, topic_titre, topic_createur, topic_vu, topic_post, topic_time, topic_last_post, Mb.membre_pseudo AS membre_pseudo_createur, post_createur, post_time, Ma.membre_pseudo AS membre_pseudo_last_posteur FROM forum_topic LEFT JOIN forum_membres Mb ON Mb.membre_id = forum_topic.topic_createur LEFT JOIN forum_post ON forum_topic.topic_last_post = forum_post.post_id LEFT JOIN forum_membres Ma ON Ma.membre_id = forum_post.post_createur WHERE topic_genre <> "Annonce" AND forum_topic.forum_id = "'.$forum.'" ORDER BY topic_last_post DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage .'') or die (mysql_error()); if (mysql_num_rows($requete3) > 0) { ?> <table> <tr> <th><img src="./images/message.gif" alt="Message" /></th> <th class="titre"><strong>Titre</strong></th> <th class="nombremessages"><strong>Réponses</strong></th> <th class="nombrevu"><strong>Vus</strong></th> <th class="auteur"><strong>Auteur</strong></th> <th class="derniermessage"><strong>Dernier message </strong></th> </tr> <?php //On lance la boucle while ($data3 = mysql_fetch_assoc($requete3)) { //Ah bah tiens... re vla l'echo de fou echo'<tr><td><img src="./images/message.gif" alt="Message" /></td> <td class="titre"> <strong><a href="./voirtopic.php?t='.$data3['topic_id'].'" title="Topic commencé à '.date('H\hi \l\e d M,y',$data3['topic_time']).'"> '.stripslashes(htmlspecialchars($data3['topic_titre'])).'</a></strong></td> <td class="nombremessages">'.$data3['topic_post'].'</td> <td class="nombrevu">'.$data3['topic_vu'].'</td> <td><a href="./voirprofil.php?m='.$data3['topic_createur'].' &action=consulter"> '.stripslashes(htmlspecialchars($data3['membre_pseudo_createur'])).'</a></td>'; //Selection dernier message $nombreDeMessagesParPage = 15; $nbr_post = $data3['topic_post'] +1; $page = ceil($nbr_post / $nombreDeMessagesParPage); echo '<td class="derniermessage">Par <a href="./voirprofil.php?m='.$data3['post_createur'].' &action=consulter"> '.stripslashes(htmlspecialchars($data3['membre_pseudo_last_posteur'])).'</a><br /> A <a href="./voirtopic.php?t='.$data3['topic_id'].'&page='.$page.'#p_'.$data3['post_id'].'">'.date('H\hi \l\e d M y',$data3['post_time']).'</a></td></tr>'; } ?> </table> <?php } else //S'il n'y a pas de message { echo'<p>Ce forum ne contient aucun sujet actuellement</p>'; } ?> </div> </body></html>