Volgens mij heb ik het terug kunnen brengen tot de variabelen.
Zo'n 10 jaar terug gebruikte ik b.v. '%$ZAchternaam%'
Het formulier bevat 5 categorieën waar je op kan zoeken.
Nummer
achternaam
voornamen
geboortedatum
overlijdensdatum
In de zoekfunctie hoef je niet op alles te zoeken, maar op delen.
Als je alleen geboortedatum 1927 in vult, zou hij alle documenten moeten vinden van personen die in 1927 zijn geboren. Daarom gebruikte ik % als wildcards. Net als vroeger een * in MSDOS (voor de oudjes)
De onderstaande code werkt wel voor achternaam, mits ik die volledig invul.
<?php
session_start();
//Om foutmeldingen in beeld te krijgen - alleen tijdens debuggen!:
ini_set('display_errors',true);
error_reporting(E_ALL);
include('config.php');
// uitlezen gegevens uit formulier
if(isset($_POST["SUBMIT"])) {
echo "formulier verzonden <br>";
$Zidnr = $_POST['Zidnr'];
$ZAchternaam = $_POST['ZAchternaam'];
$ZVoornamen = $_POST['ZVoornamen'];
$Zgeboortedatum =$_POST['Zgeboortedatum'];
$Zoverlijdensdatum =$_POST['Zoverlijdensdatum'];
// hier wilde ik zoeken op een deel van de invoer
//$Zidnr ='%$Zidnr%';
//$ZAchternaam ='%'.$ZAchternaam.'%'; werkt ook niet
//$ZVoornamen ='%$ZVoornamen%';
//$Zgeboortedatum ='%$Zgeboortedatum%';
//$Zoverlijdensdatum ='%$Zoverlijdensdatum%';
echo "Zoek id: ".$Zidnr." achternaam: ".$ZAchternaam." avoornamen: ".$ZVoornamen." geboren: ".$Zgeboortedatum." overleden: ".$Zoverlijdensdatum." <br> " ;
echo "<table>";
// Verbind met database
try
{
// --> $pdoResult = $pdoConnect->prepare("SELECT * FROM db_bidprentjes WHERE id=:id AND achternaam=:achternaam AND voornaam=:voornaam AND geboortedatum=:geboortedatum AND overlijdensdatum=:overlijdensdatum");
// voor testen beperkt tot alleen achternaam
$pdoResult = $pdoConnect->prepare("SELECT * FROM db_bidprentjes WHERE achternaam=:achternaam ");
$pdoResult->bindValue(':id', $Zidnr);
$pdoResult->bindValue(':achternaam', $ZAchternaam);
$pdoResult->bindValue(':voornaam', $ZVoornamen);
$pdoResult->bindValue(':geboortedatum', $Zgeboortedatum);
$pdoResult->bindValue(':overlijdensdatum', $Zoverlijdensdatum);
// --> $pdoResult->execute(array(':id' => $Zidnr, ':achternaam' => $ZAchternaam, ':voornaam' => $ZVoornamen, ':geboortedatum' => $Zgeboortedatum, ':overlijdensdatum' => $Zoverlijdensdatum ));
$pdoResult->execute(array(':achternaam' => $ZAchternaam ));
while($row = $pdoResult->fetch(PDO::FETCH_ASSOC)) {
$Tid=$row['id'];
$Tgedcomnummer=$row['gedcomnummer'];
$Tachternaam=$row['achternaam'];
$Tvoornamen=$row['voornaam'];
$Tvoorzetsel=$row['voorzetsel'];
$Tgeboortedatum=$row['geboortedatum'];
$Tgeboorteplaats=$row['geboorteplaats'];
$Toverlijdensdatum=$row['overlijdensdatum'];
$Toverlijdensplaats=$row['overlijdensplaats'];
$TP1_naam = $row['P1_naam'];
$TP2_naam = $row['P2_naam'];
$TP3_naam = $row['P3_naam'];
$TPsamen = $TP1_naam.", ".$TP2_naam.", ".$TP3_naam;
if ($TP3_naam == "0") { $TPsamen = $TP1_naam." ".$TP2_naam; }
if ($TP3_naam == "") { $TPsamen = $TP1_naam." ".$TP2_naam; }
if ($TP2_naam == "0") { $TPsamen = $TP1_naam; }
if ($TP2_naam == "") { $TPsamen = $TP1_naam; }
echo "<tr>";
echo " <td width=\"4%\" ><a href=\"Bidpr_view.php?zid=".$Tid."\"> ".$Tid."</a></td> ";
echo " <td width=\"24%\" > ".$Tachternaam.", ".$Tvoornamen." ".$Tvoorzetsel."</td> ";
echo " <td width=\"24%\" > ".$Tgeboortedatum.", ".$Tgeboorteplaats."</td>";
echo " <td width=\"24%\" > ".$Toverlijdensdatum.", ".$Toverlijdensplaats."</td>";
echo " <td width=\"24%\" > ".$TPsamen."</td>";
echo "</tr>";
} // while
} // einde try
catch(PDOException $e){
echo $e->getMessage();
} // einde catch
} // einde isset
echo "</table>";
echo "<br>";
echo "<hr>";
//sluit de verbinding
?>
<table width="50" border="0">
<form method="post" enctype="multipart/form-data">
<table>
<tr><td>ID nummer</td>
<td><input type="text" name="Zidnr" value=""></td>
<td> </td>
<td> </td>
</tr>
<tr><td>Achternaam</td>
<td><input type="text" name="ZAchternaam" value=""></td>
<td> </td>
<td> Volledig of deel van naam</td>
</tr>
<tr><td>Voornamen</td>
<td><input type="text" name="ZVoornamen" value=""></td>
<td> </td>
<td> Volledig of deel van naam</td>
</tr>
<tr><td>Geboortedatum</td>
<td><input type="text" name="Zgeboortedatum" value=""></td>
<td> </td>
<td> formaat dd-mm-jjjj</td>
</tr>
<tr><td>Overlijdensdatum</td>
<td><input type="text" name="Zoverlijdensdatum" value=""></td>
<td> </td>
<td> formaat dd-mm-jjjj</td>
</tr>
<tr><td></td>
<td><input type=SUBMIT name="SUBMIT" value="Verzenden !"></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</table>
</form>