Nun probiere ich schon seit Stunden herum und habe schon etliche "Anleitungen" gelesen, jedoch sagt beschreibt jede die Funktionsweise anders. Ich weiß einfach nicht weiter und bin total verwirrt.
Ist es denn wirklich so schwer, meine doch simple Abfrage in PDO zu schreiben?
Zum Aufbau:
Auf meiner Seite befindet sich ein einfaches Formular mit einem text-input, welches als Suchfeld dient. Mit dem abschicken des Formulares wird der input mit einer Datenbank abgegblichen und ALLE Ergebnisse (LIKE) werden dargestellt.
So sieht mein "normales" query Script aus:
Code: Alles auswählen
<?php
if ( $_SERVER["REQUEST_METHOD"] == 'POST' ) {
$suche = htmlspecialchars($_POST['suche']);
if (!empty($suche)) {
$sql = new rex_sql;
$sql->debugsql = 0;
if($gruppe_teilnehmer == 'admin') {
$sql->setQuery("SELECT * FROM rex_projekte WHERE projektname LIKE '%$suche%' OR projektnummer_hw LIKE '%$suche%' OR projektnummer_k LIKE '%$suche%'");
} else {
$sql->setQuery("SELECT * FROM rex_projekte WHERE (projektname LIKE '%$suche%' OR projektnummer_hw LIKE '%$suche%' OR projektnummer_k LIKE '%$suche%') AND gruppe = '$gruppe_teilnehmer'");
}
if ($sql->getRows() >= 1) {
for($i = 1; $i <= $sql->getRows(); $i++, $sql->next())
{
$projektname_suche = $sql->getValue("projektname");
$projektnummer_hw_suche = $sql->getValue("projektnummer_hw");
$projektnummer_k_suche = $sql->getValue("projektnummer_k");
$projektseite_suche = $sql->getValue("projektseite");
$projektstatus_suche = $sql->getValue("projektstatus");
$projektdatum_suche = $sql->getValue("projektdatum");
$liefertermin_suche = date("d.m.Y",strtotime($sql->getValue("liefertermin")));
$suche_projekt_ausgabe .= '<li><a href="index.php?article_id='.$projektseite_suche.'"></a><i class="fa fa-file-o"></i>'.$projektname_suche.'<ul><li><i class="fa fa-calendar"></i>'.$projektdatum_suche.'</li><li><i class="fa fa-circle"></i>'.$projektnummer_hw_suche.'</li><li><i class="fa fa-circle"></i>'.$projektnummer_k_suche.'</li><li><i class="fa fa-info-circle"></i>'.$projektstatus_suche.'</li><li><i class="fa fa-clock-o"></i>'.$liefertermin_suche.'</li></ul></li>';
}
}
if(empty($suche_projekt_ausgabe)) {
$suche_projekt_ausgabe .= '<div style="padding: 20px 0;">Es wurden keine Projekte gefunden!</div>';
}
}
}
?>
Könnt ihr mir helfen dieses Script mithilfe von PDO mit Prepared Statements umzuschreiben?
Vielen Dank!
P.S.
Code: Alles auswählen
$sql = new rex_sql;