PHP Suchtextfeld, Datenbankabfrage

Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

akl

Grünschnabel
Ich versuche derzeit eine Suche in PHP zu implementieren.

Mein derzeitiger Ansatz funktioniert nicht:

PHP:
<?php

if (isset ($_POST['Suche'])) {
    $vorgabeName = htmlspecialchars ($_POST['Suche']);
    $sucheGestartet = true;
}
else {

    $vorgabeName = 'Bestellung/ArtNr/EAN/HAN';
    $sucheGestartet = false;
}

if($sucheGestartet){
$serverName4 = "server";
$connectionOptions4 = array("Database"=>"name",
"Uid"=>"...", "PWD"=>"...");
//Establishes the connection
$conn1 = sqlsrv_connect($serverName4, $connectionOptions4);

$suchePseudos = "abfrage";
//Executes the query
$getSuchePseudos = sqlsrv_query($conn4, $suchePseudos);
//Error handling
if ($getSuchePseudos == FALSE)
die(FormatErrors(sqlsrv_errors()));
}
?>

<form>
<fieldset>
<label>Suche: <input type="text" size="50" name="Suche" value="<?php echo $vorgabeName; ?>"></label>
</fieldset> 
</form>
</br>
  
<?php
if($sucheGestartet){
while($rowSuche = sqlsrv_fetch_array($getSuchePseudos, SQLSRV_FETCH_ASSOC))
{
$datenSuche[] = $rowSuche;
}       
    ?>   
<table id="suchePseudoTabelle" method="POST" class="tabelle" border="1" data-role="table" data-mode="columntoggle" data-column-btn-text="Spalten" >
      <thead>
        <tr>
          <th data-priority="6">Bestellung</th> 
          <th data-priority="5">ExterneNr</th>
          <th>KundenNr</th>
          <th data-priority="1">Artikelnummer</th>
          <th data-priority="2">HAN</th>
          <th data-priority="3">EAN</th> 
          <th data-priority="4">Hersteller</th>
        </tr>
      </thead>
      <tbody>
    <?php
    foreach ($datenSuche as $inhaltSuche) {
    ?>
        <tr>
            <td>
                <?php echo $inhaltSuche['Bestellung']; ?>
            </td> 
            <td>
                <?php echo $inhaltSuche['ExterneNr']; ?>
            </td>
            <td>
                <?php echo $inhaltSuche['KundenNr']; ?>
            </td>
            <td>
                <?php echo $inhaltSuche['Artikelnummer']; ?>
            </td>
            <td>
                <?php echo $inhaltSuche['HAN']; ?>
            </td>
            <td>
                <?php echo $inhaltSuche['EAN']; ?>
            </td>
            <td>
                <?php echo $inhaltSuche['Hersteller']; ?>
            </td>       
      </tr>
    <?php
    }   
}
    ?>
      </tbody>
    </table> 
    <?php
sqlsrv_free_stmt($getSuchePseudos);
?>

Ich will mit dem Ergebnis der Suche, einen Eintrag in der Datenbank suchen, jedoch ohne Erfolg. Meine Abfrage funktioniert und die Ausgabe auch, lediglich das übergeben des Parameters aus der Suchbox funktioniert nicht.
 
Zuletzt bearbeitet:
Wo öffnest du den form-tag? Ich seeh nur den End-Tag </form>
Dann fehlt noch ein submit auf das Formular.
 
Oh, das hatte ich vergessen. So funktioniert zumindest meine Form, ein brauchbares Ergebnis erhalte ich dennoch nicht^^
 
HTML:
<form>
<fieldset>
<label>Suche: <input type="text" size="50" name="Suche" value="<?php echo $vorgabeName; ?>"></label>
</fieldset>   
</form>
Das ist das was ich habe.
 
Du schickst dein Form gar nicht ab.
Lies dich mal in die Materie von HTML-Form und PHP ein. Bei deinem Code fehlt etwa alles was man für ein Formular ohne Javascript braucht:
action
type
submit
 
  • Gefällt mir
Reaktionen: akl
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
Zurück