hallo,

ik heb weer een vraagje.
ik ben op zoek naar een manier om mijn database uit te lezen dermate van zoek kriteria.
nu heb ik 1 input veld en dit werpt top!
full textsearch heb ik ook naar gekeken maar naar zo iets ben ik niet op zoek.
ik wil dus bijvoorbeeld 3 input velden onder elkaar :

1 voor zoeken op username
2 voor zoeken op id
3 voor zoeken op mail adres

nu heb ik bij de input name verschillende namen gemaakt dus bv.
zoek1
zoek2
zoek3

en bij mijn query heb ik dit ingevuld :


$query = "SELECT * FROM `user` WHERE (`username` LIKE '%".$zoek1."%' OR `id` LIKE '%".$zoek2."%'OR `usermail` LIKE '%".$zoek3."%'";  




maar als ik nu 3 zoekvelden heb maakt het niet uit wat ik invul maar ik krijg altijd alle gegevens te zien uit de database.

dit komt denk ik door de lege velden.

wat kan ik hier tegen doen???
Ben ik weer.

dit heb ik nu maar als ik dit op mijn site zet werkt alleen de birthday. de andere geven de Er is iets fout gegaan bij het zoeken in de database. dat is de else.

de error reporting heb ik er ook in staan alleen niet hier gepost.
wel op een iets andere manier maar hij werkt prima. (omgekeerd ) :P


<?
$zoekwoord4 = $_POST['zoekwoord4'];
$zoekwoord5 = $_POST['zoekwoord5'];
if($_SERVER['REQUEST_METHOD'] == 'POST')
{																														
    $query = "SELECT id, user_name, birthday, TIMESTAMPDIFF(YEAR, birthday, CURDATE()) AS age FROM users WHERE (`id` LIKE '%".mysql_real_escape_string($_POST['zoekwoord'])."%' )
																													AND (`user_name` LIKE '%".mysql_real_escape_string($_POST['zoekwoord1'])."%' )
										
																													AND (`birthday` BETWEEN (CURRENT_DATE - INTERVAL $zoekwoord5 YEAR) AND (CURRENT_DATE - INTERVAL $zoekwoord4 YEAR))
												
																													 ";  
	ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
?>
Ik zou
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
?>
even bovenaan in je script zetten. En jouw witte pagina kan ook komen omdat er typefouten in je script zitten waardoor je script helemaal niet gestart kan worden en je dus enkel een witte pagina overhoudt. Ivo wees me hier onlangs nog op in dit topic. Als je dit Topic leest dan weet je ook dat het beter is om de instellingen in php.ini te veranderen of om een .htaccess bestand aan te maken.
pfffff hoop koppijn en zoeken toch weer het oude script van mij geprobeerd.
ik kan er niet uit komen.
nu vandaag voor de 5e x het script met de $wheres variable geprobeerd.
zoeken en zoeken waarom ik alleen maar een wit scherm krijg.

de error reporting werkt voor geen meter..
deze boven aan gezet en er komen nogsteeds geen errors uit.....

dan maar even proberen met een if(1){ }
en deze werkt nog niet....

hoewel!
als ik even alle andere if's weg haal begint er leven in te komen!

toch weer alles terug gezet en zoeken beetje bij beetje.
in eens valt mijn oog op de :
<? if (!empty($_POST['zoekwoord1']) { ?> 


ik zie dat de ( voor de !empty niet afgesloten wordt!

alles aan gepast en je raad het vast al?

alles werkt nu bijna top!


in ieder geval wil ik alvast iedereen bedanken die hieraan mee gedacht en geholpen heeft met als uitzondering GER!
hier heb ik veel van geleerd van de schrijf wijze waarop je dus ook een where kan uitvoeren.

het enigste wat nog niet werkt is de birthday WEERGAVEN!!
als ik zeg tussen 10 en 20 jaar dan geeft hij weer 10 tot 19 jaar.

waar moet ik de + 1 plaatsen?

EDIT : GEVONDEN! ++$variable doet het werk! alles werkt top nu!
Precies wat ik mijn vorige post gezegd heb dus... Lees het eens door ;-)
jep frank!

ik heb alleen jouw topic nog niet gelezen. als ik me ergens in vast bijt houd ik me ook alleen daarmee bezig om afleiding te voorkomen.
aan de ene kant een goede eigenschap maar soms ook een slechte.
je topic ga ik zeker nog even door lezen.

Reageren