Probleme variable de session

Résolu/Fermé
mali_67 Messages postés 77 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 25 avril 2008 - 21 févr. 2008 à 09:38
mali_67 Messages postés 77 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 25 avril 2008 - 21 févr. 2008 à 10:19
Bonjour, j'ai créer un formulaire avec un tableau ou es remplis divers renseignement provenant de ma base de donnée, et un systéme de pagination afin que l'utilisateur puisse lui-même choisir le nombre de ligne qu'il souhaite afficher par page.
Tout fonctionne bien, mais mon probleme es survenue ce matin, ce probleme et sur mon systeme de pagination,
l'utilisteur entre le nombre de ligne qu'il veut afficher dans une variable et je voulais faire en sorte que au premier demarage de ma page ma variable soit initialiser a 5 ligne(ou 10 peu importe il faut qu'elle soit initialiser).
Donc voila j'initialise ma variable mais ce n'est pas prix en compte alor on m'affiche le message suivant tand que je n'ai pa rentrer de valeur via mon formulaire
"Warning division par zero ligne 41" ( la preuve que ma variable n'est pas initialiser)

voici mon code : ( je preciser en commentaire ou es ma ligne 41)

<?php
			session_start();
	                    $host= 'localhost';
			$user= 'root';
			$pass= '';
			$bdd='Référencement';
			$table='hyperlien';
			/*connection avec MySQL*/
			mysql_connect($host,$user,$pass)or die ('Impossible de se connecter au serveur');
			mysql_select_db($bdd)or die('Impossible de se connecter à la base de donnés');
			/*Stockage dans la base de données*/
	
         /*Supprimer*/
        if (isset($_GET['NumLien']))
        {
        $_GET['NumLien'] = addslashes($_GET['NumLien']);
        mysql_query('DELETE FROM Référencement.hyperlien WHERE NumLien=\'' . $_GET['NumLien'] . '\'');
	    header('location:Accueil.php');
        }
        //affichage des lignes
        
        $nombrelignepage = 5 ;
        if(isset($_POST['valider']))
        {
         if (!is_numeric($_POST ['nombre'])) 
        { 
        $erreur = "Vous n'avez rien entrer ou n'avez pas entrer de chiffre!''"; 
        }
        else
        $_SESSION['nombrelignepage'] = $_POST ['nombre'] ;
	
        }
		
        if(isset($_GET["nombre"])){
        $_SESSION['nombrelignepage'] = $_GET['nombre'] ;
        }

        $retour = mysql_query('select COUNT(*) as VAL from Référencement.hyperlien');
        $donnees = mysql_fetch_array($retour);
        $total = $donnees['VAL'];
        $nombreDePages  = ceil($total / $_SESSION['nombrelignepage']); //VOICI MA LIGNE 41
        


Si vous avez besoin du reste du code demander moi mais il est long!

4 réponses

Enax Messages postés 203 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 16 mars 2010 145
21 févr. 2008 à 09:51
Tu initialises une variable $nombrelignepage alors que tu fais appel à une variable $_SESSION['nombrelignepage'] dans ton calcul.
0
mali_67 Messages postés 77 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 25 avril 2008 4
21 févr. 2008 à 10:02
Oui mais si j'initialise $_SESSION['nombrelignepage'] le probleme es que a chaque rechargement de ma page la variable revien a la valeur d'initialisateur et il ne faut pas alor je ne sais pas comment faire
0
Enax Messages postés 203 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 16 mars 2010 145
21 févr. 2008 à 10:14
Tu ajoutes une condition. Si la variable n'existe pas déjà, tu lui donnes une valeur par défaut.
<?php
	if(!$_SESSION['nombrelignepage'])
		$_SESSION['nombrelignepage'] = 10;
?> 
0
mali_67 Messages postés 77 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 25 avril 2008 4
21 févr. 2008 à 10:19
ouais sa marche , merci enax
0