Transmission de variables

Résolu
begueradj Messages postés 273 Date d'inscription dimanche 4 octobre 2009 Statut Membre Dernière intervention 24 juin 2014 - 21 févr. 2010 à 08:38
begueradj Messages postés 273 Date d'inscription dimanche 4 octobre 2009 Statut Membre Dernière intervention 24 juin 2014 - 22 févr. 2010 à 17:20
Bonjour;

J'ai un ficiher movie1.php qui propose de lister mes films préférés d'une façon ordonnée (dans ce cas, je coche ma case à cocher) ou non (après avoir rentré le nombre de films à lister dans un champ de texte): ces 2 options marchent très bien.

J'ai un lien qui , je souhaite, lorsque je clique dessus, une page (moviesite.php) affiche mon film préféré , mais je reçois ce message d'erreur:

[b]My top
Notice: Undefined index: num in C:\Program Files\EasyPHP5.2.10\www\absbeginner\moviesite.php on line 51
movies are :

Notice: Undefined index: num in C:\Program Files\EasyPHP5.2.10\www\absbeginner\moviesite.php on line 55/b

Pourriez-vous me dire à quoi est dûe cette erreur ? (sachant le reste marche bien)

voici la source complète de mon fichier movie1.php:

<?php
/*setcookie('username','Joe',time()+60);*/
session_start();
$_SESSION['username']=$_POST['user'];
$_SESSION['userpass']=$_POST['pass'];
$_SESSION['authuser']=0;
/*Check username and password information */
if(($_SESSION['username']=='Joe')AND($_SESSION['userpass']=='12345')){
$_SESSION['authuser']=1;
}else{
      echo"Sorry, but you do not have the persmission to view this page, you loser !";
  exit();
}
?>
<html>
<head>
<title>Find my favorite movie !</title>
</head>

<?php 
include "header.php"
?>
<?php
$myfavmovie=urlencode("The Life of Brian");
echo"
";
echo"";
echo"
";

echo"
";
echo"";
echo"Click here to see information about my favorite movie";
echo"";
echo"
";
echo"
";
echo"Or choose how many movies you would like to see: ";
echo"
"


?>
<form method="post" action="moviesite.php">
Enter number of movies (up to 10):



Check here if you want the list sorted alphabetically:




</form>

</html>



Et voici mon fichier moviesite.php:


<?php
session_start();
/*check to see if user has logged in with a valid password*/
if($_SESSION['authuser']!=1){
echo"Sorry, but you have not the right to see this page, you loser !";
exit();
}
?>
<html>
<head>
<title>My movie site- <?php echo $_REQUEST['favmovie']  ?></title>
</head>

<?php
include "header.php"
?>
<?php
$favmovies=array("Life of Brayan","Stripes","Office space","The Holy Grail","Matrix","Terminator 2","Star Wars","Close Encounters of the Third Kind","Sixteen Candles","Caddyshack");
?>
<?php
if(ISSET($_REQUEST['favmovie'])){
echo"Welcome to our site";
echo $_SESSION['username'];
echo" !
";
echo"My favorite movie is: ";
echo $_REQUEST['favmovie'];
echo"
";
$movierate=5;
echo"My movie rating for this movie is: ";
echo $movierate;
}else 
if(ISSET($_REQUEST['sorted'])){
sort($favmovies);
//echo $currentvalue;
echo "My top ";
echo $_POST["num"];
echo" movies are : 
";
//list the movies
$numlist = 1;
while ($numlist <= $_POST["num"]){
echo $numlist;
echo ". ";
echo pos($favmovies);
next($favmovies);
echo "
\n";
$numlist = $numlist + 1;
}
echo"
\n";
}else{
echo "My top ";
echo $_POST["num"];
echo" movies are : 
";
//list the movies
$numlist = 1;
while ($numlist <= $_POST["num"]) {
echo $numlist;
echo ". ";
echo pos($favmovies);
next($favmovies);
echo "
\n";
$numlist = $numlist + 1;
}
}
?>

</html>

4 réponses

seblechinois Messages postés 72 Date d'inscription mercredi 27 décembre 2000 Statut Membre Dernière intervention 16 mai 2016 1
22 févr. 2010 à 14:10
Bonjour,
echo"";


L'apostrophe du lien est fermée trop tôt

echo"";

3
phpAnonyme Messages postés 392 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 23 mars 2012 55
21 févr. 2010 à 16:39
Salut,

En gros, il te faut vérifier l'existence de $_POST['num'], avant de bosser dessus => isset($_POST['num'])

En l'état, elle est indéfinie et donc 'inutilisable'...
______________________________________________________________________
0
begueradj Messages postés 273 Date d'inscription dimanche 4 octobre 2009 Statut Membre Dernière intervention 24 juin 2014 9
22 févr. 2010 à 09:14
Merci PhpAnonyme;

Justement, le lien hypertext codé n'a rien à voir avec la variable 'num': regardez-bien le code:

echo"";
echo"Click here to see information about my favorite movie";
echo"";


L'erreur affichée n'a aucune raison d'être apparemment, mais il se trouve que le click sur le lien dessus génère le message d'erreur suivant:

[b]My top
Notice: Undefined index: num in C:\Program Files\EasyPHP5.2.10\www\absbeginner\moviesite.php on line 51
movies are :

Notice: Undefined index: num in C:\Program Files\EasyPHP5.2.10\www\absbeginner\moviesite.php on line 55
/b
0
begueradj Messages postés 273 Date d'inscription dimanche 4 octobre 2009 Statut Membre Dernière intervention 24 juin 2014 9
22 févr. 2010 à 17:20
Merci beaucoup Mr. Seblechinois.
Le problème est résolu grâce à votre intervention.
Merci beaucoup
0
Rejoignez-nous