Mon code PHP a une erreur, mais pas de message d'erreur
Résolu
Truncky
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
Truncky Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
Truncky Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai fini un des mes script, il marchait hier, et aujourd'hui, j'ai voulu changer des choses, l'optimiser, mais il y a une erreur dans le code, et la page est toute blanche, sans message d'erreur.
Voici le code PHP en question:
Des fois, les code que je met ne s'executent pas a cause d'erreurs bidons, genre oublie de ; à la fin d'un ligne $aaaa = $bbbb; ou même des apostrophes dans du html sans mettre de \ avant etc.
La j'ai chercher, et il ne doit pas y avoir d'rreur de ce genre...
Si quelqu'un pourrait m'aider, Merci ! :)
J'ai fini un des mes script, il marchait hier, et aujourd'hui, j'ai voulu changer des choses, l'optimiser, mais il y a une erreur dans le code, et la page est toute blanche, sans message d'erreur.
Voici le code PHP en question:
<?php include('base.php'); include('tete.php'); ?> <?php if(!isset($_SESSION['m']['pseudo'])) { avert('<b>Vous n\'êtes pas connecté.</b>'); include('pied.php'); exit; } $reponse = mysql_unbuffered_query('SELECT * FROM journal WHERE id=' . $_GET['id']); $donnees = mysql_fetch_assoc($reponse); $reponse4 = mysql_unbuffered_query('SELECT * FROM journalsuivre WHERE idpseudo=' . $_SESSION['m']['id']); $reponse2 = mysql_unbuffered_query('SELECT * FROM msgjournal WHERE idjournal=' . $_GET['id']); if(isset($_GET['id'])) { echo' <div class="bloc1"><h3>Journal de <b> ' . $donnees['pseudo'] . ' </b> : <b> ' . htmlspecialchars(utf8_decode($donnees['nom'])) . ' </b> </h3> <div class="texte"><form method="post" action="journal.php?id=' . $_GET['id'] . '&suivre=' . $_GET['id'] . '"><input type="submit" value="S\'abonner" /></form> Publications:<br><br> '; while($donnees2 = mysql_fetch_assoc($reponse2)) { if($_GET['id'] == $donnees2['id']) { echo' <div class="citationaa"><b> ' . $donnees2['pseudo'] . ' </b> :<b><center><h2> ' . $donnees2['message'] . ' </h2></center></b><br>'; $timestamp = $donnees2['date']; // Tableau des mois en français $mois_fr = array('', 'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'); // Tableau de la date // $jour_modif = array('', '1er', 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); // On extrait la date du jour list($jour, $mois, $annee) = explode('/', date('d/n/Y', $timestamp)); echo $jour . ' ' . $mois_fr[$mois] . ' ' . $annee; echo ' à '; echo date('H\:i\:s', $timestamp); echo' <br></div> '; } else { echo' <div class="citation"><b> ' . $donnees2['pseudo'] . ' </b> :<b><center><h2> ' . $donnees2['message'] . ' </h2></center></b><br> '; $timestamp = $donnees2['date']; // Tableau des mois en français $mois_fr = array('', 'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'); // Tableau de la date // $jour_modif = array('', '1er', 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); // On extrait la date du jour list($jour, $mois, $annee) = explode('/', date('d/n/Y', $timestamp)); echo $jour . ' ' . $mois_fr[$mois] . ' ' . $annee; echo ' à '; echo date('H\:i\:s', $timestamp); echo' <br></div> '; } } echo' </div></div><br> <form method="post" action="journal.php?id=' . $_GET['id'] . '"> <div class="bloc1"><h3>Nouvelle publication</h3> <div class="texte">* Message: <textarea name="message" style="border-radius: 5px;max-width: 670px; width: 670px; outline: 0 none;background-image: url(\'http://image.noelshack.com/fichiers/2013/12/1364038032-fontexte.png\'); repeat: none;border: 1px solid #848484;" id="message" rows="15" cols="82"></textarea> <br> <center><input type="submit" value="Publier" /></center> <br> </div></div> '; if(isset($_GET['suivre'])) { if($_GET['suivre'] == $donnees['id']) { $pseud = $_SESSION['m']['pseudo']; $idpseud = $_SESSION['m']['id']; $asuivre = $_GET['suivre']; $nomsuivre = $donnees['nom']; $pseudsuivre = $donnees['pseudo']; mysql_query("INSERT INTO journalsuivre VALUES('" . $pseud . "', '" . $idpseud . "', '" . $asuivre . "', '" . $nomsuivre . "', '" . $pseudsuivre . "' )"); }else{ avert('Erreur'); } } if($_POST['message']) { if($_POST['message']) { $id = $_SESSION['m']['id']; $idjournal = $_GET['id']; $pseudo = $_SESSION['m']['pseudo']; $message = text_i(secure($_POST['message'])); header('Location: journal.php'); mysql_query("INSERT INTO msgjournal VALUES('" . $id . "', '" . $pseudo . "', '" . $message . "', '" . time() . "', '" . $idjournal . "' )"); echo' Publie ! <meta http-equiv="refresh" content="0;URL=journal.php?id=' . $_GET['id'] . '"> '; } else{ echo' <br> '; avert('Votre publication est vide.'); } } } else { $reponse = mysql_query('SELECT COUNT(*) FROM journal WHERE id REGEXP "^' . $_SESSION['m']['id'] .'$"'); $result = mysql_result($reponse, 0); if($result == 0) { if($_GET['etape'] == 1) { //securisation $pseudo = secure($_SESSION['m']['pseudo']); $nom = text_i(secure($_POST['nom']))); $id = secure($_SESSION['m']['id']); $coms = '0'; $msg = ''; $date = '0'; if(!empty($nom)) { if(preg_match("#^[a-zA-Z0-9\[\]\s_-z' -à]{5,100}$#", $_POST['nom'])) // Si le pseudo respecte les conditions { mysql_query("INSERT INTO journal VALUES('" . $id . "', '" . $pseudo . "', '" . $nom . "', '" . $coms . "', '" . $msg . "', '" . $date . "')"); echo' <div class="bloc1"> <h3>Journal OK</h3> <div class="texte"> Ton journal a ete creer ! Nom: ' . $nom . ' </div> </div> '; } else { avert('Vous n\'avez pas entrer de nom'); } } else { avert('Le nom ne respecte pas les conditions. 5 a 100 Caracteres.'); } } else { //La page principale echo' <div class="bloc1"> <h3>Creation d\'un journal</h3> <div class="texte"> <form method="post" action="journal.php?etape=1"> <div class="saisie"><label for="pseudo"><font color="red">* Votre pseudo</font> :</label> <input readonly type="text" name="pseudo" id="pseudo" value="' . $_SESSION['m']['pseudo'] . '"/></div><br/> <div class="saisie"><label for="passe"><font color="red">* Nom de votre journal</font> :</label> <input id="nom" "type="text" name="nom" /></div><br /> <center><input type="submit" value="Creation du journal" /> </div> </div> '; } } else{ echo' <div class="bloc1"><h3>Accedez a votre journal</h3> <div class="texte"><center><a href="journal.php?id=' . $_SESSION['m']['id'] . '"> Votre journal </a><br> </div></div> '; } } include('pied.php'); ?>
Des fois, les code que je met ne s'executent pas a cause d'erreurs bidons, genre oublie de ; à la fin d'un ligne $aaaa = $bbbb; ou même des apostrophes dans du html sans mettre de \ avant etc.
La j'ai chercher, et il ne doit pas y avoir d'rreur de ce genre...
Si quelqu'un pourrait m'aider, Merci ! :)
A voir également:
- Mon code PHP a une erreur, mais pas de message d'erreur
- Code ascii - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Recuperer message whatsapp supprimé - Guide
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Message supprimé whatsapp - Guide
3 réponses
Salut, tu mets:
if(!isset($_SESSION['m']['pseudo']))
et ou est ton session_start() ??
il faut:
if(!isset($_SESSION['m']['pseudo']))
et ou est ton session_start() ??
il faut:
<?php session_start(); if(!isset($_SESSION['m']['pseudo'])) .....
Truncky
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
Je vais essayer, mais cette partie du script marchait très bien hier, et je ne l'ai pas modifiée aujourd'hui.
Truncky
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
Le session_start(); est déjà dans le fichier base.php
ok,
mais mysql_unbuffered est dépréciée en php5.5 en plus ton code est un peu bizare tu utilises $_GET['id'] puis plus bas tu testes si il est isset, ce n'est pas très logique
$reponse = mysql_unbuffered_query('SELECT * FROM journal WHERE id=' . $_GET['id']);
$donnees = mysql_fetch_assoc($reponse);
$reponse4 = mysql_unbuffered_query('SELECT * FROM journalsuivre WHERE idpseudo=' . $_SESSION['m']['id']);
$reponse2 = mysql_unbuffered_query('SELECT * FROM msgjournal WHERE idjournal=' . $_GET['id']);
if(isset($_GET['id']))
{
echo' <div class="bloc1"><h3>Journal de <b> ' . $donnees['pseudo'] . ' </b> : <b> ' . htmlspecialchars(utf8_decode($donnees['nom'])) . ' </b> </h3>
<div class="texte
il vaudrait mieux:
de plus tu mets
header('Location: journal.php');
hors avant cela tu as plein de code html affiché dans ta page avec les echo, ça ne marche pas il ne doit rien y avoir avant le header
mais mysql_unbuffered est dépréciée en php5.5 en plus ton code est un peu bizare tu utilises $_GET['id'] puis plus bas tu testes si il est isset, ce n'est pas très logique
$reponse = mysql_unbuffered_query('SELECT * FROM journal WHERE id=' . $_GET['id']);
$donnees = mysql_fetch_assoc($reponse);
$reponse4 = mysql_unbuffered_query('SELECT * FROM journalsuivre WHERE idpseudo=' . $_SESSION['m']['id']);
$reponse2 = mysql_unbuffered_query('SELECT * FROM msgjournal WHERE idjournal=' . $_GET['id']);
if(isset($_GET['id']))
{
echo' <div class="bloc1"><h3>Journal de <b> ' . $donnees['pseudo'] . ' </b> : <b> ' . htmlspecialchars(utf8_decode($donnees['nom'])) . ' </b> </h3>
<div class="texte
il vaudrait mieux:
<?php include('base.php'); include('tete.php'); if(!isset($_SESSION['m']['pseudo'])) { avert('<b>Vous n\'êtes pas connecté.</b>'); include('pied.php'); exit; } //init parametres: //il vaut mieux le mettre la, car dans la boucle ça va les charger à chaque passage ! // Tableau des mois en français $mois_fr = array('', 'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'); // Tableau de la date // $jour_modif = array('', '1er', 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); //fonction php: function affichage_date($timestamp){ // On extrait la date du jour list($jour, $mois, $annee) = explode('/', date('d/n/Y', $timestamp)); $date_aff= $jour . ' ' . $mois_fr[$mois] . ' ' . $annee; $date_aff.= ' à '; $date_aff.= date('H\:i\:s',$timestamp); $date_aff.=' <br></div>'; return $date_aff; } // $reponse4 = mysql_unbuffered_query('SELECT * FROM journalsuivre WHERE idpseudo=' . $_SESSION['m']['id']); if(isset($_GET['id'])) { //on fait la requette que si on a $_GET['id'] $reponse = mysql_query('SELECT * FROM journal WHERE id=' . $_GET['id']); $donnees = mysql_fetch_assoc($reponse); echo' <div class="bloc1"><h3>Journal de <b> ' . $donnees['pseudo'] . ' </b> : <b> ' . htmlspecialchars(utf8_decode($donnees['nom'])) . ' </b> </h3> <div class="texte"><form method="post" action="journal.php?id=' . $_GET['id'] . '&suivre=' . $_GET['id'] . '"><input type="submit" value="S\'abonner" /></form> Publications:<br><br>'; $reponse2 = mysql_query('SELECT * FROM msgjournal WHERE idjournal=' . $_GET['id']); while($donnees2 = mysql_fetch_assoc($reponse2)) { $timestamp = $donnees2['date']; if($_GET['id'] == $donnees2['id']) { echo'<div class="citationaa"><b> ' . $donnees2['pseudo'] . ' </b> :<b><center><h2> ' . $donnees2['message'] . ' </h2></center></b><br>'; //pour afficher la date,tu fais exactement les m^mes calculs dans les deux cas on peut donc simplifier par une fonction } else { echo'<div class="citation"><b> ' . $donnees2['pseudo'] . ' </b> :<b><center><h2> ' . $donnees2['message'] . ' </h2></center></b><br>'; echo affichage_date($donnees2['date']); } } //le saut de ligne c'est <br /> et pas <br> //revoit tes <div></div> echo '</div></div><br /> <form method="post" action="journal.php?id='. $_GET['id'].'"> <div class="bloc1"><h3>Nouvelle publication</h3> <div class="texte">* Message: <textarea name="message" style="border-radius: 5px;max-width: 670px; width: 670px; outline: 0 none;background-image: url(\'http://image.noelshack.com/fichiers/2013/12/1364038032-fontexte.png\'); repeat: none;border: 1px solid #848484;" id="message" rows="15" cols="82"></textarea> <br /> <center><input type="submit" value="Publier" /></center> <br /> </div></div>'; if(isset($_GET['suivre'])) { //je suppose que en même temps que GET['suivre'] tu as aussi $_GET['id'] if($_GET['suivre'] == $donnees['id']) { ..........etc....
de plus tu mets
header('Location: journal.php');
hors avant cela tu as plein de code html affiché dans ta page avec les echo, ça ne marche pas il ne doit rien y avoir avant le header
J'ai bien remplacer ton code donné à l'endroit ou il faut, çà ne fonctionne toujours pas :(
je comprend pas, hier ça marchait impeccable, et aujourd'hui, j'ai changer 1 truc a peine vers le haut, BAM plus rien...
Voici ce que ça donne avec ton code:
je comprend pas, hier ça marchait impeccable, et aujourd'hui, j'ai changer 1 truc a peine vers le haut, BAM plus rien...
Voici ce que ça donne avec ton code:
<?php include('base.php'); include('tete.php'); if(!isset($_SESSION['m']['pseudo'])) { avert('<b>Vous n\'êtes pas connecté.</b>'); include('pied.php'); exit; } //init parametres: //il vaut mieux le mettre la, car dans la boucle ça va les charger à chaque passage ! // Tableau des mois en français $mois_fr = array('', 'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'); // Tableau de la date // $jour_modif = array('', '1er', 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); //fonction php: function affichage_date($timestamp){ // On extrait la date du jour list($jour, $mois, $annee) = explode('/', date('d/n/Y', $timestamp)); $date_aff= $jour . ' ' . $mois_fr[$mois] . ' ' . $annee; $date_aff.= ' à '; $date_aff.= date('H\:i\:s',$timestamp); $date_aff.=' <br></div>'; return $date_aff; } // $reponse4 = mysql_unbuffered_query('SELECT * FROM journalsuivre WHERE idpseudo=' . $_SESSION['m']['id']); if(isset($_GET['id'])) { //on fait la requette que si on a $_GET['id'] $reponse = mysql_query('SELECT * FROM journal WHERE id=' . $_GET['id']); $donnees = mysql_fetch_assoc($reponse); echo' <div class="bloc1"><h3>Journal de <b> ' . $donnees['pseudo'] . ' </b> : <b> ' . htmlspecialchars(utf8_decode($donnees['nom'])) . ' </b> </h3> <div class="texte"><form method="post" action="journal.php?id=' . $_GET['id'] . '&suivre=' . $_GET['id'] . '"><input type="submit" value="S\'abonner" /></form> Publications:<br><br>'; $reponse2 = mysql_query('SELECT * FROM msgjournal WHERE idjournal=' . $_GET['id']); while($donnees2 = mysql_fetch_assoc($reponse2)) { $timestamp = $donnees2['date']; if($_GET['id'] == $donnees2['id']) { echo'<div class="citationaa"><b> ' . $donnees2['pseudo'] . ' </b> :<b><center><h2> ' . $donnees2['message'] . ' </h2></center></b><br>'; //pour afficher la date,tu fais exactement les m^mes calculs dans les deux cas on peut donc simplifier par une fonction } else { echo'<div class="citation"><b> ' . $donnees2['pseudo'] . ' </b> :<b><center><h2> ' . $donnees2['message'] . ' </h2></center></b><br>'; echo affichage_date($donnees2['date']); } } //le saut de ligne c'est <br /> et pas <br> //revoit tes <div></div> echo '</div></div><br /> <form method="post" action="journal.php?id='. $_GET['id'].'"> <div class="bloc1"><h3>Nouvelle publication</h3> <div class="texte">* Message: <textarea name="message" style="border-radius: 5px;max-width: 670px; width: 670px; outline: 0 none;background-image: url(\'http://image.noelshack.com/fichiers/2013/12/1364038032-fontexte.png\'); repeat: none;border: 1px solid #848484;" id="message" rows="15" cols="82"></textarea> <br /> <center><input type="submit" value="Publier" /></center> <br /> </div></div>'; if(isset($_GET['suivre'])) { if($_GET['suivre'] == $donnees['id']) { $pseud = $_SESSION['m']['pseudo']; $idpseud = $_SESSION['m']['id']; $asuivre = $_GET['suivre']; $nomsuivre = $donnees['nom']; $pseudsuivre = $donnees['pseudo']; mysql_query("INSERT INTO journalsuivre VALUES('" . $pseud . "', '" . $idpseud . "', '" . $asuivre . "', '" . $nomsuivre . "', '" . $pseudsuivre . "' )"); }else{ avert('Erreur'); } } if($_POST['message']) { if($_POST['message']) { $id = $_SESSION['m']['id']; $idjournal = $_GET['id']; $pseudo = $_SESSION['m']['pseudo']; $message = secure($_POST['message']); header('Location: journal.php'); mysql_query("INSERT INTO msgjournal VALUES('" . $id . "', '" . $pseudo . "', '" . $message . "', '" . time() . "', '" . $idjournal . "' )"); echo' Publie ! <meta http-equiv="refresh" content="0;URL=journal.php?id=' . $_GET['id'] . '"> '; } else{ echo' <br> '; avert('Votre publication est vide.'); } } } else { $reponse = mysql_query('SELECT COUNT(*) FROM journal WHERE id REGEXP "^' . $_SESSION['m']['id'] .'$"'); $result = mysql_result($reponse, 0); if($result == 0) { if($_GET['etape'] == 1) { //securisation $pseudo = secure($_SESSION['m']['pseudo']); $nom = text_i(secure($_POST['nom']))); $id = secure($_SESSION['m']['id']); $coms = '0'; $msg = ''; $date = '0'; if(!empty($nom)) { if(preg_match("#^[a-zA-Z0-9\[\]\s_-z' -à]{5,100}$#", $_POST['nom'])) // Si le pseudo respecte les conditions { mysql_query("INSERT INTO journal VALUES('" . $id . "', '" . $pseudo . "', '" . $nom . "', '" . $coms . "', '" . $msg . "', '" . $date . "')"); echo' <div class="bloc1"> <h3>Journal OK</h3> <div class="texte"> Ton journal a ete creer ! Nom: ' . $nom . ' </div> </div> '; } else { avert('Vous n\'avez pas entrer de nom'); } } else { avert('Le nom ne respecte pas les conditions. 5 a 100 Caracteres.'); } } else { //La page principale echo' <div class="bloc1"> <h3>Creation d\'un journal</h3> <div class="texte"> <form method="post" action="journal.php?etape=1"> <div class="saisie"><label for="pseudo"><font color="red">* Votre pseudo</font> :</label> <input readonly type="text" name="pseudo" id="pseudo" value="' . $_SESSION['m']['pseudo'] . '"/></div><br/> <div class="saisie"><label for="passe"><font color="red">* Nom de votre journal</font> :</label> <input id="nom" "type="text" name="nom" /></div><br /> <center><input type="submit" value="Creation du journal" /> </div> </div> '; } } else{ echo' <div class="bloc1"><h3>Accedez a votre journal</h3> <div class="texte"><center><a href="journal.php?id=' . $_SESSION['m']['id'] . '"> Votre journal </a><br> </div></div> '; } } error_reporting(E_ALL); include('pied.php'); ?>