zoeken en zoekveld
Als ik op zoek klik wordt de inhoud van de totale database getoond.
Wat moet ik veranderen om dit te voorkomen ?
Zeer waarschijnlijk staat er in je SQL quote een * ipv de veldnamen die je nodig hebt.
PS ik ben nog een beginner maar vind het bijzonder interresant om mee te kijken op dit forum.
Gewijzigd op 14/02/2012 13:04:32 door Stephan Hendrikx
where is the code dude? of mogen we gaan raden ? :)
Code (php)
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
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
<p><?php echo $_POST['zoekveld']; ?></p>
<?php if ($totalRows_rszoeken > 0) { // Show if recordset not empty ?>
<p> <strong class="rood"> Er is (zijn) <?php echo $totalRows_rszoeken ?> resultaat(en) gevonden</strong></p>
<p> </p>
<table width="776" border="0">
<?php do { ?>
<tr>
<td><?php echo $row_rszoeken['naam']; ?> <?php echo $row_rszoeken['latnaam']; ?></td>
<td><?php echo $row_rszoeken['kleur']; ?></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<?php } while ($row_rszoeken = mysql_fetch_assoc($rszoeken)); ?>
</table>
<?php } // Show if recordset not empty ?>
<p> </p>
<form id="form2" name="form2" method="post" action="">
<label>
<input type="submit" name="button2" id="button2" value="Terug" />
</label>
</form>
<p> </p>
<p> </p>
<?php if ($totalRows_rszoeken == 0) { // Show if recordset empty ?>
<p>Er zijn geen resultaten gevonden</p>
<?php } // Show if recordset empty ?>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<!-- InstanceEndEditable --></div>
</div>
</body>
<!-- InstanceEnd --></html>
<?php
mysql_free_result($rszoeken);
?>
<?php if ($totalRows_rszoeken > 0) { // Show if recordset not empty ?>
<p> <strong class="rood"> Er is (zijn) <?php echo $totalRows_rszoeken ?> resultaat(en) gevonden</strong></p>
<p> </p>
<table width="776" border="0">
<?php do { ?>
<tr>
<td><?php echo $row_rszoeken['naam']; ?> <?php echo $row_rszoeken['latnaam']; ?></td>
<td><?php echo $row_rszoeken['kleur']; ?></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<?php } while ($row_rszoeken = mysql_fetch_assoc($rszoeken)); ?>
</table>
<?php } // Show if recordset not empty ?>
<p> </p>
<form id="form2" name="form2" method="post" action="">
<label>
<input type="submit" name="button2" id="button2" value="Terug" />
</label>
</form>
<p> </p>
<p> </p>
<?php if ($totalRows_rszoeken == 0) { // Show if recordset empty ?>
<p>Er zijn geen resultaten gevonden</p>
<?php } // Show if recordset empty ?>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<!-- InstanceEndEditable --></div>
</div>
</body>
<!-- InstanceEnd --></html>
<?php
mysql_free_result($rszoeken);
?>
Gewijzigd op 14/02/2012 17:29:41 door Bas IJzelendoorn
Zo is het (bijna) niet te lezen.
Volgens mij is dit ook niet het hele script (alleen relevante code!)
Zie nergens een query staan namelijk.
Ben zelf n.l. pas met P.H.P. gestart en merk aan Uw reactie dat U al ver-ver gevorderd bent.
Rien Beckers op 14/02/2012 13:37:43:
Zal mijn leraar vragen wat U allemaal bedoeld.
Ben zelf n.l. pas met P.H.P. gestart en merk aan Uw reactie dat U al ver-ver gevorderd bent.
Ben zelf n.l. pas met P.H.P. gestart en merk aan Uw reactie dat U al ver-ver gevorderd bent.
Er wordt alleen gevraagd of je jouw post even wilt fatsoeneren en dan ook even de code wilt geven waar wij wat mee kunnen. Verder niks.
U mag zonodig ook gerust zeggen:
Ga eerst een aantal jaren terug naar je volwassenen onderwijs.
Rien Beckers op 14/02/2012 15:35:47:
Geef dan eens een voorbeeld van gesorteerde post en van de code die je in dit geval nodig hebt.
U mag zonodig ook gerust zeggen:
Ga eerst een aantal jaren terug naar je volwassenen onderwijs.
U mag zonodig ook gerust zeggen:
Ga eerst een aantal jaren terug naar je volwassenen onderwijs.
Geen idee wat dat betekent/waar dat op slaat.
Je wilt hulp (toch?); zorg dan ook dat we dat kunnen geven.
Je code zoals die hierboven staat is (bijna) onleesbaar. Hoe dat op te lossen heb ik uitgelegd.
Als je hele database getoond wordt, dan is a) de vraag wat de hele database is en b) verwacht ik dan dat dat gebeurt door een select-query. Maar die zie ik niet.
Dus er mist wat (query, juiste informatie, ....)
Met vragen als 'het werkt niet' is het verdraaid lastig om een antwoord te geven waar je wat aan hebt.
FROM tt_planten
WHERE naam LIKE %colname% or kleur LIKE %colname% or aard LIKE %colname%
U hebt gezocht op het trefwoord
Er zijn 17 resultaten gevonden
De goudsbloem oranje kruid
Geranium wit sierplant
Passiebloem blauw, paars klimplant
Maagdenpalm blauw kruipplant
Aardbei 123 wit kruipplant
Abessijnse gladiool paars opgaande plant
Anemoon blauw, roze opgaande plant
Margriet wit opgaande plant
Amerikaanse seringen sierplant
Frangipan geel sierplant
roosmetgeel wit kruipplant
stokroos geel, paars, roze, w klimplant
RR klimplant
aaaaaaaaaaaaaaaaaaaa oranje kruid
potanjer kkk klimplant
aaaaabbb wit kruid
blauwe bloemen blauw kruid
Ik doe het wel:
Code (php)
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
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
<p>
<?php echo $_POST['zoekveld']; ?>
</p>
<?php if ($totalRows_rszoeken > 0) { // Show if recordset not empty ?>
<p> <strong class="rood"> Er is (zijn)
<?php echo $totalRows_rszoeken ?>
resultaat(en) gevonden</strong></p>
<p> </p>
<table width="776" border="0">
<?php do { ?>
<tr>
<td>
<?php echo $row_rszoeken['naam']; ?>
<?php echo $row_rszoeken['latnaam']; ?>
</td>
<td>
<?php echo $row_rszoeken['kleur']; ?>
</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<?php } while ($row_rszoeken = mysql_fetch_assoc($rszoeken)); ?>
</table>
<?php } // Show if recordset not empty ?>
<p> </p>
<form id="form2" name="form2" method="post" action="">
<label>
<input type="submit" name="button2" id="button2" value="Terug" />
</label>
</form>
<p> </p>
<p> </p>
<?php if ($totalRows_rszoeken == 0) { // Show if recordset empty ?>
<p>Er zijn geen resultaten gevonden</p>
<?php } // Show if recordset empty ?>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<!-- InstanceEndEditable --></div>
</div>
</body>
<!-- InstanceEnd --></html>
<?php
mysql_free_result($rszoeken);
?>
<?php echo $_POST['zoekveld']; ?>
</p>
<?php if ($totalRows_rszoeken > 0) { // Show if recordset not empty ?>
<p> <strong class="rood"> Er is (zijn)
<?php echo $totalRows_rszoeken ?>
resultaat(en) gevonden</strong></p>
<p> </p>
<table width="776" border="0">
<?php do { ?>
<tr>
<td>
<?php echo $row_rszoeken['naam']; ?>
<?php echo $row_rszoeken['latnaam']; ?>
</td>
<td>
<?php echo $row_rszoeken['kleur']; ?>
</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<?php } while ($row_rszoeken = mysql_fetch_assoc($rszoeken)); ?>
</table>
<?php } // Show if recordset not empty ?>
<p> </p>
<form id="form2" name="form2" method="post" action="">
<label>
<input type="submit" name="button2" id="button2" value="Terug" />
</label>
</form>
<p> </p>
<p> </p>
<?php if ($totalRows_rszoeken == 0) { // Show if recordset empty ?>
<p>Er zijn geen resultaten gevonden</p>
<?php } // Show if recordset empty ?>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<!-- InstanceEndEditable --></div>
</div>
</body>
<!-- InstanceEnd --></html>
<?php
mysql_free_result($rszoeken);
?>
Dit is fatsoenlijk tussen codetags :P
Als je niet alles wilt tonen gebruik je LIMIT in de query.
Nog niet duidelijk genoeg.
Rien Beckers op 14/02/2012 15:35:47:
U mag zonodig ook gerust zeggen:
Ga eerst een aantal jaren terug naar je volwassenen onderwijs.
Ga eerst een aantal jaren terug naar je volwassenen onderwijs.
Bekijk de problemen 1 voor 1.
Als je niet goed weet hoe MySQL queries werken, begin dan niet onmiddellijk met formulieren/zoekvelden/controleren/ ...
Maar open phpMyadmin en probeer de queries daar rechtstreeks uit.
Je hebt geen php-code nodig om die queries uit te proberen.
---
In testfase is dit vaak handig:
echo je sql query en copy paste die rechtstreeks in phpMyadmin.
Zo zal je vlugger vorderen.
Rien Beckers op 14/02/2012 17:23:18:
Dit is fatsoenlijk tussen codetags :P
Nog niet duidelijk genoeg.
Nog niet duidelijk genoeg.
Klik eens op zijn 'quote'-knopje en kijk naar de manier waarop hij het script heeft gepost.
Als ik op zoek klik terwijl niets is ingetypt in het zoekveld mogen er ook geen resultaten komen.
Wat moet ik veranderen opdat er dan ook geen resultaten getoond worden?
FROM tt_planten
WHERE naam LIKE %colname% or kleur LIKE %colname% or aard LIKE %colname%
* selecteert dus alles.. Plaats alleen de veldnamen die je wilt gebruiken.
Als ik het * weghaal krijg ik fout meldingen.
die moet je vervangen door alle velden die je wilt hebben ;)
Je moet er ook andere dingen voor plaatsen, bijvoorbeeld SELECT planten, dan werkt het wel.