Thema: Verbindung aufnehmen, Datensätze suchen


Datensätze abfragen und suchen

MySQL

In einem PHP-Programm können die Datensätze mit der Anweisung select und zusammen mit where ... like abgefragt und gesucht werden.
Abfrage mit Platzhalter:
Wenn Sie nicht genau wissen, an welcher Stelle das Wort Schmitz steht, welches Sie suchen, können Sie den Platzhalter % verwenden. Der Platzhalter % steht für beliebig viele Zeichen. Weiterhin müssen Sie das = durch LIKE ersetzen.
    SELECT * FROM lab_tbl_personen WHERE name LIKE '%Schmitz%';
Ein weiterer Platzhalter ist der Unterstrich. Dieser steht für genau ein Zeichen.
    SELECT * FROM lab_tbl_personen WHERE name LIKE 'S__z';

Datensätze suchen

<form  class="mb-2" action="c54.php" method="post">
   <div class="form-group">
       <label class="control-label" for="inputNachname">Nachname</label>
       <input type="text" name="anfang" class="form-control" id="inputNachname" />
   </div> 
    <div class="form-group">
         <button type="submit" name="send" class="btn btn-primary">
		<span class="fa fa-send"></span> Send</button>
	 </div>
</form>

<?php
if(isset($_POST["send"])){
	$db= mysqli_connect("localhost", "user", "password", "datenbank");
	if (mysqli_connect_errno()) {
  		echo "Failed to connect to MySQL: " . mysqli_connect_error();
  		exit();
	}
	$anfang = $_POST["anfang"];
	$sqlstr = "select * from lab_tblpersonen where name like '" . $anfang . "%'";
	$res = mysqli_query($db, $sqlstr);
   $num = mysqli_num_rows($res);
   if ($num==0) {
      echo "Keine passenden Datens&auml;tze gefunden!";
   } else { ?>
	<table class="table striped">
	<thead>
	<tr><th>Lfd. Nr.</th><th>Name</th>
	<th>Vorname</th><th>Personalnummer</th>
	<th>Gehalt</th><th>Zulage</th><th>Geburtstag</th></tr>
	</thead><tbody>
	
<?php	while ($dsatz = mysqli_fetch_assoc($res)) { ?>
		<tr>
      <td><?php echo $dsatz["id"]; ?></td>
		<td><?php echo $dsatz["name"]; ?></td>
		<td><?php echo $dsatz["vorname"]; ?></td>
		<td><?php echo$dsatz["personalnummer"]; ?></td>
		<td><?php echo number_format($dsatz["gehalt"],2,",","."); ?></td>
		<td><?php echo number_format($dsatz["zulage"],2,",","."); ?></td>
		<td><?php echo $dsatz["geburtstag"]; ?></td>
		</tr>      
<?php	} ?>
		</tbody></table>
<?php	
}
	mysqli_free_result($res);
	mysqli_close($db); 
}
?>

Datensätze suchen