8722 sujets

Développement web côté serveur, CMS

Bonjour à tous,

Je ne suis, mais là vraiment pas, un expert en php et c'est la raison pour laquelle j'écris sur ce forum.

J'ai une page contenant deux formulaire de recherche (un par catégorie, l'autre par groupe d'age) et j'affiche mes résultats depuis un query avec une pagination.

Tout fa bien jusqu'au moment ou je passe d'une page a l'autre: dès que je change de page je pers ma liste de résultats et ma page n'affiche rien d'autre que mes formulaire.

J'ai fait un print_r de ma sessions et au lancement de ma page j'ai:

Array()

Une fois mon formulaire envoyé j'ai, par exemple:

Array ( Smiley categorie => 4 )

Mais quand je change de page je retourne à:

Array()

Pouvez-vous m'aider ou du moins me dire comment corriger le problème?

Merci beaucoup.

Par Age <img src="../images/check_mark.png" width="50" onclick="MM_changeProp('age','','display','block','DIV');MM_changeProp('cat','','display','none','DIV')"/>
Par catégorie <img src="../images/check_mark.png" width="50" onclick="MM_changeProp('age','','display','none','DIV');MM_changeProp('cat','','display','block','DIV')" />
<div id="age" style="display:none"><form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" onsubmit="return validateForm()">
<select name="age" id="age">
<option name="ageid" value="1">1</option>
<option name="ageid" value="2">2</option>
<option name="ageid" value="3">3</option>
<option name="ageid" value="4">4</option>
<option name="ageid" value="5">5</option>
<option name="ageid" value="6">6</option>
</select>
<input name="" type="submit" />

</form></div>
<div id="cat" style="display:none">
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" onsubmit="return validateForm()">
<select name="categorie">
<?php 


$fp = fopen($_SERVER["DOCUMENT_ROOT"]."/frimousse/Categorie.csv", 'r');
// Headrow
$head = fgetcsv($fp, 4096, ';', '"');
 
// Rows
while($column = fgetcsv($fp, 4096, ';', '"'))
{
    $column = array_combine($head, $column);
	
?>

<option name="categorieNom" value="<?php echo $column['IdCategorie']?>"><?php echo $column['Nom']?></option>
<?php
 }

?>
</select>
<input name="" type="submit" />
</form>
</div>
<?php 
session_start ();
if (isset($_POST['categorie']) ) { $_SESSION['categorie'] = $_POST['categorie']; }
if (isset($_POST['age']) ) { $_SESSION['age'] = $_POST['age']; }
include('config.php');
    include ('pagination.php'); 
    $per_page = 6; 
if (isset($_SESSION['categorie'])) {
    $result = mysql_query("SELECT * FROM csvdata where IdCategorie={$_SESSION['categorie']}");
	}
if (isset($_SESSION['age'])) {
    $result = mysql_query("SELECT * FROM csvdata where AgeVise={$_SESSION['age']}");
	}

    $total_results = mysql_num_rows($result);
    $total_pages = ceil($total_results / $per_page);
    if (isset($_GET['page'])) {
    $show_page = $_GET['page']; //current page
    if ($show_page > 0 && $show_page <= $total_pages) {
    $start = ($show_page - 0) * $per_page;
    $end = $start + $per_page;
    } else {
    $start = 0;
    $end = $per_page;
    }
    } else {
    $start = 0;
    $end = $per_page;
    }
    // display pagination
    $page = intval($_GET['page']);
    $tpages=$total_pages;
    if ($page <= 0)
    $page = 1;
      $reload = $_SERVER['PHP_SELF'] . "?tpages=" . $tpages;


for ($i = $start; $i < $end; $i++) {

if ($i == $total_results) {
break;
}
if (mysql_result($result, $i, 'IdCategorie') == "1") {
    $cat = "Jeu de motricité";
} elseif (mysql_result($result, $i, 'IdCategorie') == "2") {
    $cat = "Jeu d'habileté/rapidité";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "3") {
    $cat = "Jeu sensoriel";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "4") {
    $cat = "Jeu de rôles";
	} elseif (mysql_result($result, $i, 'IdCategorie') =="5") {
    $cat = "Jeu de hasard";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "6") {
    $cat = "Jeu de construction/assemblage";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "7") {
    $cat = "Jeu de créativité/artistique";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "8") {
    $cat = "Jeu de stratégie/réflexion";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "9") {
    $cat = "Jeu de vocabulaire";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "10") {
    $cat = "Jeu mathématique";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "11") {
    $cat = "Jeu d'apprentissage/connaissance";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "12") {
    $cat = "Jeu de mémoire";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "13") {
    $cat = "Jeu de plein air";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "14") {
    $cat = "Livre avec dessins seulement";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "15") {
    $cat = "Livre avec textes et dessins";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "16") {
    $cat = "Livre avec textes seulement";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "17") {
    $cat = "Livre de bricolages";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "18") {
    $cat = "Livre destiné aux parents";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "19") {
    $cat = "Cassette vidéo - Dessins animés";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "20") {
    $cat = "Cassette vidéo - Film";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "21") {
    $cat = "Cassette audio";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "22") {
    $cat = "CD-Rom audio";
	} elseif (mysql_result($result, $i, 'IdCategorie') == "23") {
    $cat = "CD-Rom informatique";
} else {

}
echo "<div style='float:left;width:150px;padding-left:10px;padding-right:10px;height:200px;padding-bottom:50px;vertical-align:top'>";
$IdPhoto = mysql_result($result, $i, 'IdPhoto');

if (empty($IdPhoto))
{
	?>
 <div style="margin-top:5px;height:100px"><img src="<?php $_SERVER['DOCUMENT_ROOT'];?>/frimousse/dataimg/not-found.jpg" width="120px"></div><br />
 <?php
} else {
?>
<div style="margin-top:5px;height:100px"><img src="<?php $_SERVER['DOCUMENT_ROOT'];?>/frimousse/dataimg/i<? echo $IdPhoto ?>.jpg" width="120px" style="padding-bottom:10px"></div><br />

<?php 
 }
 $Titre = utf8_encode(mysql_result($result, $i, 'Titre'));
// echo out the contents of each row into a table
echo '<div style="margin-top:5px;height:35px">' . $Titre . '</div><br />';
echo '<div style="margin-top:-15px;height:20px">' . $cat . '</div><br />';
echo '<div style="margin-top:5px">' . mysql_result($result, $i, 'AgeVise') . '</div><br /></div>';
}
// close table>
echo "<div style='clear:both'></div>";
echo '<div class="pagination"><ul>';
if ($total_pages > 1) {
echo paginate($reload, $show_page, $total_pages);
}
echo "</ul></div>";
// pagination

    ?>


Merci beaucoup.