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:

Yaslaw

n/a
Moderator
Wo öffnest du den form-tag? Ich seeh nur den End-Tag </form>
Dann fehlt noch ein submit auf das Formular.
 

akl

Grünschnabel
Oh, das hatte ich vergessen. So funktioniert zumindest meine Form, ein brauchbares Ergebnis erhalte ich dennoch nicht^^
 

akl

Grünschnabel
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.
 

Yaslaw

n/a
Moderator
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…