ik gebruik dit script om de leefijtd van mijn gebruikers te bepalen
maar is het ook mogelijk om het net anders om te doen
bijvoorbeeld, in de db staat ergens jjjj/mm/dd
en ik zoek naar leeftijd 15.. dan moet het script em ombouwen zodat hij iedereen vind die overeenkomt met 15 jaar...

EDIT: Hij moet dus de Geboortedatum/jaar Laten zien
da met die wildcards ofzow hoef ik eigenlijk (nog) helemaal niet..
ik wil gewoon hebben da ik kan zoeken met de leeftijd, enkel dat moet hij uit de db halen als geboortedatum, en da moet dan omgezet worden..
das het enige..
maja, k zal es probeeren
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

als ik op leeftijd zoek.. :S
ik heb het probleem... :) (where ;))

<?php

if($_SERVER['REQUEST_METHOD'] == 'POST'){
$user = str_replace("*", "%", $_POST['username']);
$user = str_replace("?", "_", $user);
$name = str_replace("*", "%", $_POST['name']);
$name = str_replace("?", "_", $name);
$email = str_replace("*", "%", $_POST['email']);
$email = str_replace("?", "_", $email);
$leeftijd = $POST["leeftijd"];
$sql = "SELECT * FROM pli_user";
$whereflag = true;
if (!empty($user)) {
if ($whereflag == true) {
$sql .= " WHERE";
$whereflag = false;
}
$sql .= " `username` LIKE '%" . $user . "%'";
$andflag = true;
}
if (!empty($name)) {
if ($whereflag == true) {
$sql .= " WHERE";
$whereflag = false;
}
if ($andflag == true) {
$sql .= " AND";
}
$sql .= " `name` LIKE '%" . $name . "%'";
$andflag = true;
}
if (!empty($email)) {
if ($whereflag == true) {
$sql .= " WHERE";
$whereflag = false;
}
if ($andflag == true) {
$sql .= " AND";
}
$sql .= " `email` LIKE '%" . $email . "%'";
}
$query = mysql_query($sql) or die (mysql_error());
$output = array();
while ($data = mysql_fetch_array($query)) {
if (!empty($leeftijd)) {
$datum = $data["age"];
$datum_arr = explode("/", $datum);
$datum = null;
for ($i = 0; $i < count($datum_arr); $i++) {
$datum .= $datum_arr[$i];
}
$jaar = date("Y");
$maand = date("m");
$dag = date("d");
$datum1 = date("Ymd", mktime(0,0,0,$maand,$dag - 1,$jaar - $leeftijd - 1));
$datum2 = date("Ymd", mktime(0,0,0,$maand,$dag,$jaar - $leeftijd));
if($datum >= $datum1 && $datum <= $datum2) {
$output[] = $data;
}
}
else {
$output[] = $data;
}
}
echo"<b><i>Resultaten:</b></i><br><blockquote>";
if(count($output) == 0){
echo"Geen resultaten gevonden";
}
else {
foreach($output as $data){
echo"<a href=\"index.php?x=profile&s=viewprofile&m=" . $data["id"] . "\">" . $data["username"] . "</a><br>";
}
}

?>

Reageren