8791 sujets

Développement web côté serveur, CMS

bonjour à tous
pour ce moment j'essayer de faire un script qui permet de augmenter la taille de texte en cliquant sur une image je met le code suivant mais malheureusement il ne marche pas

<?php

session_start();

$timestamp_expire = time() + 365*24*3600; // Le cookie expirera dans un an

setcookie('taille_police', '1', $timestamp_expire); // On écrit un cookie



?>

//code html

<a href="index.php?texte=agrandir"><img src="image/a1.png" alt="" /></a>

<?php

$taille_police = (isset($_COOKIE['taille_police'])) ? $_COOKIE['taille_police'] : 0;

if(texte='agrandir')

{

$new=$taille_police+1;

}

echo'<style type="text/css" media="screen"> 

body { 

font-size:'.$new.'?>em

} 

</style> ';

?>


Salut,

Je te propose de rajouter cette ligne en début de script :

error_reporting( E_ALL | E_STRICT );


Tu pourras voir de nombreuses erreurs de conception.
merci agylus
j'ai fais mais j'avais la même problème
ligne d'erreur


	if(texte='agrandir')

l'erreur

Parse error: parse error in C:\wamp\www\website\index2.php on line 71
Modérateur
Hello Eagle83,

Tu utilises des variables d'URL et donc la syntaxe de ta conditionnelle est fausse. Je t'encourage également d'encoder cette variable via urlencode(). À vue de nez, je dirai ceci :


//code en amont
$urlAgrandir = urlencode('agrandir');
//etc.
if($_GET['texte'] == urldecode('agrandir')){
	$taille_police ++;
	//etc.
}
	//etc.

*code fait de tête. Je peux m'être trompé

<<<EDIT
Je t'invite à lire ou à relire les structures de contrôle.
EDIT;

Bonne journée à toi
Modifié par Nolem (05 Aug 2009 - 14:35)
Rien ne te choque sur cette ligne ? On va quand même pas débugger à ta place cette erreur de débutant ...
Modérateur
Agylus a écrit :
Rien ne te choque sur cette ligne ? On va quand même pas débugger à ta place cette erreur de débutant ...


Agylus =>
Smiley confused
Rooooo, où ai-je les yeux ? Faut dire, j'ai lu rapidement mais pas exécuté.

Eagle83 =>
Ne confond pas le php et le js Smiley cligne . Même si c'est du js, il y a aussi une erreur de comparaison.

Eagle83 a écrit :
aucune réponse

Bien que la plupart des Alsanautes répondent sur diverses questions du php et que cela ne me dérange pas aussi d'aider, je t'informe le but de ce salon n'est pas les premiers pas en PHP, ou l'apprentissage des technologies serveurs en général.
Modifié par Nolem (05 Aug 2009 - 14:50)
Nolem a écrit :


Agylus =>
Smiley confused
Rooooo, où ai-je les yeux ? Faut dire, j'ai lu rapidement mais pas exécuté.

Eagle83 =>
Ne confond pas le php et le js Smiley cligne . Même si c'est du js, il y a aussi une erreur de comparaison.


Bien que la plupart des Alsanautes répondent sur diverses questions du php et que cela ne me dérange pas aussi d'aider, je t'informe le but de ce salon n'est pas les premiers pas en PHP, ou l'apprentissage des technologies serveurs en général.

merci bcp pour vos aide mais je pense pour être des professionnels on passe par débutant merci comme même et merci aussi pour anyguls pour ces expression d'encouragement
merci aussi norlem pour le lien mais je pense ce lien la pour les boucles c'est pour comme récupérer un variable de lien
par contre le code ne marche pas il raisonnable mais il reste tounjours ne connait pas text

Notice: Undefined index: texte in C:\wamp\www\website\index2.php on line 69



Modifié par eagle83 (05 Aug 2009 - 16:35)
bonjours à tous
depuis une semaine je reste bloquer de connaître l'erreur sur mon code j'ai plusieurs modification mais sans résultat je vous montre le code modifié et j'espère quelqu'un me sauvé


<?php
error_reporting( E_ALL | E_STRICT );
session_start();
 
$timestamp_expire = time() + 365*24*3600; // Le cookie expirera dans un an
if(isset($_COOKIE['taille_police'])) {
setcookie('taille_police', '1', $timestamp_expire); // On écrit un cookie
}
?>
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title></title>
<link rel="stylesheet" type="text/css" media="screen" href="project.css"/>
<link rel="stylesheet" type="text/css" media="screen" href="menuH.css"/>
<link rel="stylesheet" type="text/css" media="screen" href="menutest.css"/>
	
</head>
	<body>
 
<div id="zonebutcara">
<a href="index2.php?texte=agrandir"> <img src="image/a1.png" alt="" />
<?php
$urlAgrandir = urlencode('agrandir'); 
if($_GET['texte'] == urldecode('agrandir')){ \\erreur sur cette ligne il ne connait pas texte
$taille_police = (isset($_COOKIE['taille_police'])) ? $_COOKIE['taille_police'] 0;
$new=$taille_police+1;
echo'<style type="text/css" media="screen"> 
html { 
font-size:'.$new.'em
} 
</style> ';
}
echo'</a>
<img src="image/a2.png" alt="" /><img src="image/a3.png" alt="" /><img src="image/a4.png" alt="" class="reglage" /> <img src="image/a5.png" alt=""  />';
?>
</div>
 
Salut eagle83,

quand je vois :
eagle83 a écrit :
	if(texte='agrandir')
(cf. Opérateurs de comparaison).

ou
eagle83 a écrit :
	if($_GET['texte'] == ...
(Il faut tester l'existence d'une variable avant de tester sa valeur).

ou
eagle83 a écrit :
	$taille_police = (isset($_COOKIE['taille_police'])) ? $_COOKIE['taille_police'] 0;
(Il manque les 2 points : avant le 0).
...
Je me dis que tu gagnerais beaucoup de temps (et beaucoup du notre Smiley cligne ) en tenant compte de ce que je disais récemment dans ce post :
Heyoan a écrit :
...comme indiqué dans le topic : A lire avant de poster dans ce salon ! Alsacréations n'est pas le bon forum pour débuter en PHP. Tu pourrais regarder du côté du site du Zéro pour les tutos et de php.net pour la doc.

Modifié par Heyoan (08 Aug 2009 - 12:33)
Heyoan a écrit :
Salut eagle83,

quand je vois :
(cf. Opérateurs de comparaison).
j'ai deja corrigé cette erreur

ou
(Il faut tester l'existence d'une variable avant de tester sa valeur).
j'ai reçu cette réponse a coté de norlem

ou
(Il manque les 2 points : avant le 0).
...
Je me dis que tu gagnerais beaucoup de temps (et beaucoup du notre Smiley cligne ) en tenant compte de ce que je disais récemment dans ce post :

Smiley ravi Smiley ravi
merci heyon je suis vraiment désolé pour le dérangement qui j'ai fait dans votre forum ,mais ext ce que tu peux m'aider pour ce code je pense mieux que tu me blessé
eagle83 a écrit :
ext ce que tu peux m'aider pour ce code je pense mieux que tu me blessé
Loin de moi l'idée de te blesser : le but d'Alsacréations est d'accompagner les débutants dans leur apprentissage (html, css, php, etc.) mais il ne contient pas de tutoriel pour apprendre les langages en question. Si quelqu'un ne connait pas les bases il faut d'abord qu'il les apprenne et, je me répète, tu ne trouveras aucun tutoriel sur Alsa qui concerne l'apprentissage de PHP alors que plusieurs sites sont dédiés à cela (ceux cités dans l'annonce du salon PHP et on peut également rajouter le site du Zéro).
oui j'ai bien compris le but de forum
il avait des erreurs de concentration pour ce code la j'ai pas trouver comment je peux récupérer la valeur de lien et merci pour norlem qui m'est aidée de urlencode pour le problème de = c'est juste un problème de concentration ce que je n'ai pas compris pourquoi $text ne récupéré pas la valeur agrandir de lien sachant que j'ai utilisé urlen code
en tout cas vraiment je vous remercie parce que vous m'avez aidé plusieurs fois et je sais bien que j'ai fait des bizzars sur votre forum et je vous demander l'excuse pour tous ça
En l'occurrence urlencode et urldecode étaient inutiles ici puisque tu connais déjà la chaîne qui sera passée en paramètre et qu'elle n'a pas besoin d'être encodée (agrandir).

Donc juste pour finir 2 petites choses :

* la récupération d'une éventuelle variable $_GET['texte'] peut se faire de la manière suivante :
$texte = isset($_GET['texte']) ? $_GET['texte'] : '';
if (!empty($texte)) {
   ...
}
ce qui utilise l'opérateur ternaire.

* tu écris un cookie avant même de l'avoir lu...


Bonne continuation. Smiley smile
Modifié par Heyoan (08 Aug 2009 - 15:11)
Heyoan a écrit :
En l'occurrence urlencode et urldecode étaient inutiles ici puisque tu connais déjà la chaîne qui sera passée en paramètre et qu'elle n'a pas besoin d'être encodée (agrandir).

Donc juste pour finir 2 petites choses :

* la récupération d'une éventuelle variable $_GET['texte'] peut se faire de la manière suivante :
$texte = isset($_GET['texte']) ? $_GET['texte'] : '';
if (!empty($texte)) {
   ...
}
ce qui utilise l'opérateur ternaire.

* tu écris un cookie avant même de l'avoir lu...


Bonne continuation. Smiley smile

je vous remercie encore pour votre gentillesse