Probleem met pagina nummering en query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Basz

Basz

31/10/2006 16:25:00
Quote Anchor link
Mensen,

Ik heb een probleempje met een zoekfunctie in combinatie met pagina nummering. Vanuit een formulier :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<form name="zoek" method="post" action="product_kies_verwerk2.php">
<table>
    <tr>
        <td>Zoek op Merk</td>
        <td>
            <select name="zoek">
                <option value="%Quick%">QuickStep</option>
                <option value="Balterio">Balterio</option>
                <option value="egger">Egger</option>
            </select>
        </td>
        <td>
            <input type="submit" value="zoek">
        </td>
    </tr>
</table>


Wordt de verwerk pagina aangeroepen, de variabele "zoek" bevat dus het zoekwoord uit het formulier. Zodra de verwerk pagina wordt aangeroepen gaat alles goed, alleen wanner ik naar de volgende pagina wil krijg ik geen resultaten. Dit komt volgens mij doordat de variabele "zoek" vanuit het formulier leeg is.... alleen hoe ben ik dit voor? Dit is het verwerk script:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Product show</title>
<link rel="stylesheet" type="text/css" href="../../scripts/show_style.css">

</head>

<p></p>
<div align="left">
<img src="../../images/header_zoekresultaten.gif" width="250" height="29">
</div>

<p>Hier onder treft U de producten aan die aan uw zoek opdracht voldoen. Om meer informatie over een product te krijgen zoals afmeting, verpakkings eenheid, interieur foto's of om een offerte op te stellen klik dan op <em>Details bekijken</em>. Wanneer U direct een bestelling wil plaatsen klik dan op <em>Bestel direct</em>. </p>
<?php
echo("Zoe;<br /> Aantal resultaten: $count");
?>

<?php echo $_POST['zoek']; ?>
<hr>
<br>
<table border="0" align="center">

<?php
error_reporting(E_ALL);

include('connect.php');
$mysql['search'] = $_POST["zoek"];                    



// Variables
if(is_numeric($_GET['max'])) $max = $_GET['max'];
if(is_numeric($_GET['start'])) $start = $_GET['start'];

if (empty($max)) $max = 15;  // $max is the maximum number of results per page
if (empty($start)) $start = 0; // This is the number to start the query at the right location [DO NOT EDIT]

// Calculate some stuff

$end = $start + $max;   // This is for the query, gives the number for the LIMIT
$prev = $start - $max;   // This number is for $start in the Previous-hyperlink
$next = $end;   // This number is for $start in the Next-hyperlink

// Select everything from the table

$result = "SELECT * FROM producten WHERE merk LIKE '".$mysql['search']."' ORDER BY id DESC LIMIT $start, $max" or die ('FOUT'  .mysql_error());

// Number of rows from $query
$num = mysql_num_rows($result);
if (empty($num))
{

   echo "<p>There are no results.</p>";
}

else
{
  while (list($id, $soort, $merk, $serie, $kleurcode, $kleur, $lengte, $breedte, $hoogte, $verpakking, $prijs, $afbeelding, $sfeer) = mysql_fetch_row($result))
 
 
  {

    // Show the results
    echo ("
        <tr>
        <td><b>$kleur</b></td>
        <td rowspan=\"8\" height=\"166\"><img src=\"../../images/parket/$afbeelding.jpg\"></td>
        <td></td>
    </tr>
        <tr>
        <td>$merk $serie</td></tr>
    <tr>
    <tr>
        <td>$kleurcode</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td>$prijs euro per m2</td>
        <td><a href=\"../details.php?id=$id\">Details bekijken</a></td>
    </tr>
    <tr>
        <td>&nbsp;</td>
        <td><a href=\"#\" onClick=\"window.open('../../images/sfeer/$afbeelding.jpg', 'Sfeer_impressie', 'width=400,height=500,scrollbars=no,toolbar=no,location=no,status=no,resizable=no'); return false\">Sfeer impressie</a></td>
    </tr>
    <tr>
        <td>&nbsp;</td>
        <td><a href=\"../offerte.php?id=$id\">Offerte opstellen</a></td>
    </tr>
    <tr>
        <td valign=top>&nbsp;</td>
        <td valign=top><a href=\"../bestel.php?id=$id\">Bestel direct</a></td>
    </tr>
    <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
</tr>
  "
);}
  
  
   // Check if $prev is higher than or equal to 0, if so add the Previous-hyperlink
  if ($prev >= '0')
  {

     echo "[<a href=\"product_kies_verwerk2.php?start=$prev&max=$max\">Vorige</a>]\n";
  }
else {
     echo "[Vorige]\n";
  }

  
  // Count how many rows there are in the table
  $count = mysql_fetch_row(mysql_query("SELECT count(*) FROM producten WHERE merk LIKE '".$mysql['search']."' "));

  // Calculate on which page we are
  $thispage = ceil($start/$max+1);

  // If $count[0] is higher than $max, show the pagenumbers
  if ($count[0] > $max)
  {

     // Calculate the amount of pages
     $total = ceil($count[0]/$max);
     for($i=0;$i<$total;$i++)
     {

          // The number to show has to be $1+1 (because $i starts with 0)
          $number  = $i+1;
          // $start has to be $i * $max
          $start = $i*$max;

         // If thispage is equal to the number, the link has to be bold
         if ($thispage == $number)
          {

           echo "<strong>[<a href=\"product_kies_verwerk2.php?start=" . $start . "&max=" . $max . "\">" . $number . "</a>]</strong>\n";
         }
else {
           echo "<a href=\"product_kies_verwerk2.php?start=" . $start . "&max=" . $max . "\">" . $number . "</a>\n";
         }
     }
  }


  // If $count[0] is higher than $next, show the hyperlink
  if ($count[0] > $next)
  {

     echo "[<a href=\"product_kies_verwerk2.php?start=$next&max=$max\">Volgende</a>]\n";
  }
else {
     echo "[Volgende]\n";
  }

  echo "</p>\n";
}

?>

</table>

</html>
Gewijzigd op 01/01/1970 01:00:00 door Basz
 
PHP hulp

PHP hulp

22/12/2024 18:13:28
 
Mark D

Mark D

31/10/2006 16:28:00
Quote Anchor link
Heb geen glazen bol, ga er misschien morgen 1 kopen. Wat gaat er fout, zijn er foutmedlingen ofzo.

Tip: Variabelen buiten de quotes
 
- wes  -

- wes -

31/10/2006 16:33:00
Quote Anchor link
@mark, voordat je je toorn uitspuwd over de ts, even goed lezen

@basz , zet even om je code
 
Mark D

Mark D

31/10/2006 16:40:00
Quote Anchor link
@wes, ik zie nergens staan dat er foutmeldingen zijn ofzo, en er staat toch ook niet dater geen foutemdlingen komen, ik begrijp dan dus niet hoe ik zou moeten weten wat er dan fout aan is.

edit: Typo
Gewijzigd op 01/01/1970 01:00:00 door Mark D
 
- wes  -

- wes -

31/10/2006 16:43:00
Quote Anchor link
Quote:
Zodra de verwerk pagina wordt aangeroepen gaat alles goed, alleen wanner ik naar de volgende pagina wil krijg ik geen resultaten. Dit komt volgens mij doordat de variabele "zoek" vanuit het formulier leeg is.... alleen hoe ben ik dit voor?


hij krijgt dus geen foutmeldingen maar geen results doordat zn zoekopdracht verloren raakt
 
Mark D

Mark D

31/10/2006 16:46:00
Quote Anchor link
Mijn excuses dan. Dacht dat dat stukje tekst bij de code hoorde en dat stukje tekst dus niet gelezen.
 
Basz

Basz

31/10/2006 16:48:00
Quote Anchor link
okay het lijkt nu ff wat duidelijker door de
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
maar probleem is dus dat de geposte variabele vanuit het formulier verdwijnt wanneer ik de volgende pagina met resultaten wil zien.... verder geen foutmeldingen
Gewijzigd op 01/01/1970 01:00:00 door Basz
 
Mark D

Mark D

31/10/2006 16:50:00
Quote Anchor link
Geef de zoekopdrachten door via GET naar de volgende pagina. Daar vraagje ze weer op. Dat kun je ook doen in je zoek-formulier
 
Basz

Basz

31/10/2006 16:53:00
Quote Anchor link
aha ik ben daar al even mee aan het klooien geweest, maar dit lukte niet helemaal doordat de volgende pagina's laden ook al via get gaat...
 
Mark D

Mark D

31/10/2006 16:54:00
Quote Anchor link
Je kunt meerdere vaiabelen via GET meegeven. Gewoon zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
pagina.php?eerste=waarde&tweede=waarde2
Gewijzigd op 01/01/1970 01:00:00 door Mark D
 
Basz

Basz

31/10/2006 16:56:00
Quote Anchor link
ben ik vanop de hoogte dit gebeurd nu ook al
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
product_kies_verwerk2.php?start=" . $start . "&max=" . $max .
maar ik ging ervan uit dat er wel iets simpelers was om de variabele gewoon te laten onthouden!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.