Ergebnis 1 bis 5 von 5

Thema: SQL Query liefert unerwartet leeres Ergebnis

  1. #1
    Contao-Nutzer
    Registriert seit
    09.01.2011.
    Beiträge
    234

    Frage SQL Query liefert unerwartet leeres Ergebnis

    Hallo Community,

    ich habe eine einfache Abfrage, welche im PhpMyAdmin ein Ergebnis liefert.
    In meinen PHP Code leider nicht.

    SELECT * FROM tl_ss_produkte WHERE `articlenumber` = '40801'

    Den Query habe ich von der app_dev.php der Code ist:

    PHP-Code:
    $objDb      = \Contao\Database::getInstance();
    $search $_GET['keywords'];
    $find " `articlenumber` = '$search'";
    $strQuery   "SELECT * FROM tl_ss_produkte WHERE".$find;
    $objResult  $objDb->execute($strQuery);
    return 
    $objResult
    Das Feld articlenumber ist ein varchar utf8_unicode_ci, das PHP Dokument ist utf8

    Das Form Element sieht so aus:
    Code:
     <form class="mod_search" accept-charset="UTF-8" action="<?= \Environment::get('requestUri') ?>" method="get" enctype="application/x-www-form-urlencoded">
    Für jeden Hinweiß bin ich Dankbar.
    Grüße Dennis
    Geändert von d.tafel (19.06.2020 um 13:24 Uhr)

  2. #2
    Contao-Nutzer
    Registriert seit
    09.01.2011.
    Beiträge
    234

    Standard

    Das Problem ist nicht SQL Abfrage sondern die Verarbeitung mit:

    PHP-Code:
    while ($this->objProducts->next()): 
    das überspringt wohl den ersten Eintrag...

  3. #3
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.094
    Partner-ID
    10107

    Standard

    Vorsicht, der Code den du da verwendset erlaubt SQL Injection.

  4. #4
    Contao-Nutzer
    Registriert seit
    09.01.2011.
    Beiträge
    234

    Standard

    Danke,

    ich verwende statt while jetzt:

    PHP-Code:
    $products $this->objProducts->fetchAllAssoc();
    foreach (
    $products as $product){ 
    Get Variablen jetzt mit Contaos \Input::get()

  5. #5
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.943

    Standard

    Für die Queries solltest Du trotzdem noch prepared statements verwenden um die Parameter „einzusetzen“.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •