Hallo,
ik loop momenteel vast op een klein probleem waardoor ik niet echt meer helder kan kijken naar de code.
Voor een klant van mij heb ik een zoekfunctie gemaakt, waarbij er gezocht moet worden in de DB bij bepaalde criteria. Dit lukt allemaal, echter komt er telkens maar een zoekresultaat uit...
Nu is de oplossing dus een while loop, echter gebruik ik ook nog AJAX om alles dynamisch te laten verlopen, waardoor het toch iets lastiger is.
De code is nu wat rommelig, dit komt doordat ik nu alles aan het uit proberen. De query zal later ook herschreven worden naar een prepared statement dus veiligheid is geen probleem.
$queryPlayer = $mysqli->query("SELECT * FROM spelers WHERE positie = '".$mysqli->real_escape_string($inputPosition)."' AND geboortedatum LIKE '".$strConvert."' AND geslacht = '".$mysqli->real_escape_string($inputSex)."' AND provincie = '".$mysqli->real_escape_string($inputState)."'");
while($arrayPlayer = $queryPlayer->fetch_array())
{
$html = array();
$html[] = '<div class="container"><div class="row margin-small"><div class="col-md-2 col-sm-3">';
$html[] = '<div class="player-spotlight"><strong>'.$arrayPlayer["voornaam"].' '.$arrayPlayer['achternaam'].'<span>'.floor((time() - strtotime($arrayPlayer['geboortedatum'])) / 31556926).' jaar</span></strong>';
$html[] = '<figure><img src="img/player.png" alt="A. de Brecht" />';
$html[] = '<div class="player"><strong>'.$arrayPlayer['positie'].'</strong>';
$html[] = '<div class="clearfix"></div><span>'.$arrayPlayer['woonplaats'].'</span>';
$html[] = '</div></figure>';
$html[] = '<a href="profielpagina/'.$arrayPlayer['id'].'/'.strtolower($arrayPlayer['voornaam'].$arrayPlayer['achternaam']).'" class="btn btn-green btn-block">Bekijk profiel en <img src="img/icn-camera.png" alt="Films" /></a>';
}
if($arrayPlayer == false)
{
$notFound = 1;
}
}
header('Content-Type: application/json');
$aVariables = array('error' => $error, 'nietgevonden' => $notFound, 'html' => $html);
echo json_encode($aVariables);
Toon Meer
Door middel van json_encode stuur ik alles terug naar een Javascript bestand, hier werd alles goed uitgelezen en weergeven, echter laat $html maar één resultaat zien terwijl de query er op dit moment twee ophaalt. Er zijn dus wel degelijk twee records.
Zou iemand dus misschien weten waaraan het ligt? Wellicht is het iets simpel of klopt er iets niet aan de while loop.
Bij voorbaat dank,
Reza.