8791 sujets

Développement web côté serveur, CMS

Bonjour tout le monde et désolé pour mon précédent message Smiley cligne :

Voila, donc, j'ai a peu pres réussi a faire marcher mon interface d'admin, maitenant j'essaye de mettre ça dans un design, en utilisant un include, pour info, j'inclu le contenu de la page et non le header le menu etc...
Et voici ce qui me mette : o_O

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /mnt/167/sdb/a/0/superskinds/new.php on line 30
C'est donc dans la page new qu'il y a une erreur.

Quelqu'un peut m'aider ?
Merci d'avance.
Si un programmeur php de bon niveau pourrait me passer son msn pour discuter ça serait cool Smiley cligne
@+
Bonjour,

Et bin tu peux nous donner la ligne 30 s'il te plait ? A priori tu aurais oublié les guillemets dans la parenthèse, dirait-on.

include("MonFichier");

Modifié par zzzazzz (01 Sep 2007 - 11:33)
Voici la page index.php avec l'include :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>

<head>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<title>Kit Graphique Gratuit DarkBlue - Design et Decoupe par Thorze de Tcheval.net</title>
		<link rel="stylesheet" type="text/css" href="style.css" />
</head>

<body>

        <div id="contenu">
				<div id="onglet">
					<ul><center>
						<b><li><a href="index.php">ACCUEIL</a></li>
						<li><a href="forum/index.php">FORUM</a></li>
						<li><a href="chat.php">CHAT</a></li>
						<li><a href="partenaires.php">PARTENAIRES</a></li>
						<li><a href="nousaider.php">NOUS AIDER</a></li>
						<li><a href="infos.php">INFOS</a></li>
						<li><a href="contact.php">CONTACT</a></li>
</center></b>					

</ul>
				</div>
				
                <div id="entete">
                        <h1>Kit Simply Light</h1>
                </div>
				
			<div id="hautconteneur"></div>
			<div id="fondconteneur">
				
				<div id="contenucorps">
					<div id="hautcontenu"></div>
					<div id="corps">
					<h2>Partie Administration</h2>
                        <p class="texte">
<?php
    $page = $_GET['page'];
    include("$page.php");
?>
					</div>
					<div id="bascontenu"></div>
				</div>
			
				
				<div id="contenumenu">
					<div id="menu">
                        <h2>Rubrique 1</h2>
						<ul>
							<li><a href="#">Lien 1</a></li>
							<li><a href="#">Lien 2</a></li>
							<li><a href="#">Lien 3</a></li>
							<li><a href="#">Lien 4</a></li>
						</ul>
                        <h2>Rubrique 2</h2>
						<ul>
							<li><a href="#">Lien 1</a></li>
							<li><a href="#">Lien 2</a></li>
							<li><a href="#">Lien 3</a></li>
							<li><a href="#">Lien 4</a></li>
						</ul>
                        <h2>Rubrique 3</h2>
						<ul>
							<li><a href="#">Lien 1</a></li>
							<li><a href="#">Lien 2</a></li>
							<li><a href="#">Lien 3</a></li>
							<li><a href="#">Lien 4</a></li>
						</ul>
					</div>
                </div>
				
											<div id="pieddepage">
                        <p class="textepieddepage">
                                Copyright : Votre site - Kit Graphique : <a href="http://www.tcheval.net" title="Kit graphique gratuit">Tcheval.net</a> - Valide <a href="http://validator.w3.org/check?uri=referer" title="Validateur XHTML">XHTML</a> et <a href="http://jigsaw.w3.org/css-validator/check/referer" title="Validateur CSS">CSS</a>
                        </p>
                </div>
			</div>

			
			<div id="basconteneur"></div>
			<div id="traitbas"></div>
				

				
        </div>
        
</body>

</html>


Et voici la page qu'on doit inclure :


<?php
if (isset($_POST['mot_de_passe'])) // Si la variable existe
{
    // On se crée une variable $mot_de_passe avec le mot de passe entré
    $mot_de_passe = $_POST['mot_de_passe'];
}
else // La variable n'existe pas encore
{
    $mot_de_passe = ""; // On crée une variable $mot_de_passe vide
}
 
if ($mot_de_passe == "motdepasseperso") // Si le mot de passe est bon
{
// On affiche la page cachée.
 
$appelsql = mysql_query("SELECT * FROM jeuxflash WHERE avancement='0' ORDER BY id") or die(mysql_error());
 
// La boucle :
while ($donnees = mysql_fetch_array($appelsql) )
{
        echo'Voici les demandes en attente :
        Id du jeu '.$donnees['id'].' <br />
        Il a été ajouté par'.$donnees['membre'].'<br />
        Voici le lien du jeu : '.$donnees['lien'].'<br />
        Et la description :'.$donnees['description'].'<br />
        Que souhaitez-vous faire<br />
 
<STYLE TYPE="text/css">
<!--
INPUT {
     color:#FFFFFF;
     background-color:#000000;
     font-size:12px;
     font-family:arial;
     border: 1px solid;
     border-color: #00b3e8;

}
SELECT {
     color:#FFFFFF;
     background-color:#000000;
     font-size:12px;
     font-family:arial;
     border: 1px solid;
     border-color: #00b3e8;
}
-->
</style>
        Acceptez le jeu ?
        <form action="validationcorrigee2.php" method="post"><p>
                <input type="radio" name="acceptation" value="oui" /> Oui
                <input type="radio" name="acceptation" value="non" /> Non
                <input type="submit" name="envoi" value="Envoyer le formulaire">
        </p></form>';

        if($_POST['acceptation'] == 'oui')
        {
            	$donnees = mysql_query("UPDATE jeuxflash SET avancement='1' WHERE ID='".$donnees['id']."'") or die(mysql_error());
        }
        elseif ($_POST['acceptation']=='non')
        {
                $donnees = mysql_query("DELETE FROM jeuxflash WHERE avancement='0' AND ID='".$donnees['id']."'") or die(mysql_error());
        }
        elseif ($_POST['acceptation']== NULL)
        {
                echo 'Vous n\'avez rien sélèctionné !';
        }
 
        // Les liens des pages
        $nombreDejeuxParPage = 10;
        // On récupère le nombre total de messages
        $appelsql = mysql_query("SELECT COUNT(*) AS nb_messages WHERE avancement='0' FROM jeuxflash");
        $donneessql = mysql_fetch_array($appelsql);
        $totalDesMessages = $donneessql['nb_messages'];
        // On calcule le nombre de pages à créer
        $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
        // Puis on fait une boucle pour écrire les liens vers chacune des pages
        echo 'Page : ';
        for ($i = 1 ; $i <= $nombreDePages ; $i++)
        {
                echo '<a href="validationcorrigee2.php?page=' . $i . '">' . $i . '</a> ';
        }
}
mysql_close();
?>

<?php
}
else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le mot de passe.
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title>Page protégée par mot de passe</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
<p>Veuillez entrer le mot de passe</p>
<form action="validationcorrigee2.php" method="post">
<p>
<input type="text" name="mot_de_passe" /> <input type="submit" value="Valider" />
</p>
</form>
<p>Cette page est réservée a l'administrateur.  [cligne]</p>
    </body>
</html>
<?php
} // Fin du else
// Fin du code [smile]
?>

Modifié par maximedt (03 Sep 2007 - 17:06)
Et bien tout n'est pas très clair, mais à priori l'include attend une variable "$page" avec extension .php (bon déjà c'est une première sécurité de l'avoir ajouté ici). ta variable $page vient d'un $_GET, donc on s'attend à une page avec une url du type monsit.com?page=mapage.
"mapage" devant exister physiquement sous la forme mapage.php, fais donc un echo sur $page =$_GET… tu verras bien si la variable est transmise et vérifie si elle correspond bien à un fichier.
Modifié par zzzazzz (02 Sep 2007 - 09:10)
a écrit :
Si un programmeur php de bon niveau pourrait me passer son msn pour discuter ça serait cool Smiley cligne


Alors là c'est pas fair play Smiley decu (tu n'y as sans doute pas penser mais le problème que tu évoques d'autres l'auront aussi ainsi ton post leur sera bien utile Smiley cligne ) Smiley fache
Modérateur
Bonjour maximedt,

Pourrais-tu éditer (bouton en haut à droite de chaque post) ton dernier post avec du code afin de baliser la fin correctement ? Merci d'avance. Smiley cligne

... et, comme te l'a précisé yodaswii, la plupart des membres du forum ne sont pas là uniquement pour résoudre leur problème mais pour échanger des connaissances; c'est le concept même du forum. Il serait sympa que tu en fasses de même en laissant la solution, une fois trouvée. Smiley smile
ok, si je trouve la solution, je vous la dirai mais c'est impossible que je la trouve tous seuls, s'il vous plait aidez moi Smiley bawling
Modifié par maximedt (03 Sep 2007 - 17:06)
Salut,
je n'ai pas vraiment tout regardé, mais j'ai pu apercevoir pas mal de petites erreurs.
Bon déjà pour être sur que le $_GET existe tu peux mettre

if ( $_GET && $_GET['maVariable'] )
{
 $truc = htmlentities( $_GET['maVariable'] , ENT_QUOTES );
}

et je te conseille d'aller voir php.net pour de plus amples informations sur toute fonction php (notamment htmlentities dans cet exemple).

Ensuite concernant la "page" que l'on souhaite inclure. Alors déjà en premier abord, il me semble bizarre d'inclure une page html entière (avec toute sa structure) dans une autre qui est entièrement structurée aussi.
Par ce que si je fais comme la machine, j'obtiens un truc du genre :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<title>Kit Graphique Gratuit DarkBlue - Design et Decoupe par Thorze de Tcheval.net</title>
		<link rel="stylesheet" type="text/css" href="style.css" />

</head>
<body>
<!-- Mon début de page -->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<title>Kit Graphique Gratuit DarkBlue - Design et Decoupe par Thorze de Tcheval.net</title>
		<link rel="stylesheet" type="text/css" href="style.css" />

</head>
<body>

<!-- page incluse -->

</body>

</body>

</html>


Et dernière erreur que j'ai pu constater : tu te connectes quand à ta base de donnée? Je vois bien mysql_close(), mais où est mysql_connect() ???

Je ne sais pas s'il y a d'autres erreurs, mais cela me suffit à te donner un conseil : n'essaie pas d'aller trop vite. Fais des tests avant de te lancer dans de grands trucs. Et pour exemple, à l'école on apprend à se familiariser avec les nombres avant de faire des opérations. On apprend aussi à faire des multiplications avant de faire des divisions. Tout à un sens, ne l'oublie pas...

Bon courage en tous cas.

EDIT : correction du lien
Modifié par arnaultp (04 Sep 2007 - 01:03)