0
Ich habe derzeit eine Funktion, die Benutzertickets aus meiner Datenbank zieht. Es zieht diese Daten korrekt, aber aus irgendeinem Grund, statt die Ticketnummern in zwei separaten Zeilen zu wiederholen, platziert es sie in der ersten Zeile der Tabelle. Kann mir jemand helfen, herauszufinden, warum das passieren würde?PHP Echo in der gleichen Zeile in HTML-Tabelle
Dies ist die Funktion:
function findUserTickets() {
include_once("dbh.php");
$id = $_SESSION['id'];
$sql = "SELECT * FROM tickets WHERE uid=$id";
$result = mysqli_query($conn, $sql);
while($row = mysqli_fetch_array($result)) {
echo "Ticket #".$row['tid'];
}
mysqli_close($conn);
}
Dies ist der HTML-Code:
<ul>
<?php
include("includes/functions.inc.php");
include_once("includes/dbh.php");
$userID = $_SESSION['id'];
$strSQL = "SELECT * FROM tickets WHERE uid='$userID'";
$rs = mysqli_query($conn, $strSQL);
while ($row = mysqli_fetch_array($rs)) {
?>
<li>
<div class="hk_sug_domian_name">
<p>
<?php echo findUserTickets(); ?>
</p>
</div>
<div class="hk_domain_price">
<span class="active_price"><?php echo checkTicketStatus(); ?> </span>
<div class="hk_promot_btn"><a class="hk_btn" href="progress.php">View</a></div>
</div>
</li>
<?php
}
mysqli_close($conn);
?>
</ul>
Es ist Echo auf der gleichen Linie, weil in der Schleife Sie 'echo "Ticket #" haben $ row [ 'tid'];.' Ohne Zeilenumbrüche. – Sean
Auch macht Ihr Code keinen Sinn. Warum machst du eine Funktion, wo du die selbe Tabelle/Daten innerhalb einer Schleife auswählst, in der du die selbe Tabelle/Daten wählst? Hier gibt es mehrere Redundanzen. – Sean
** WARNUNG **: Wenn Sie 'mysqli' verwenden, sollten Sie [parametrisierte Abfragen] (http://php.net/manual/en/mysqli.quickstart.prepared-statements.php) und [' bind_param'] (http://php.net/manual/en/mysqli-stmt.bind-param.php), um Benutzerdaten zu Ihrer Abfrage hinzuzufügen. ** Verwenden Sie NICHT ** String-Interpolation oder Verkettung, um dies zu erreichen, weil Sie einen schwerwiegenden [SQL injection bug] erstellt haben (http://bobby-tables.com/). ** NIEMALS ** $ _POST 'oder' $ _GET' Daten direkt in eine Abfrage einfügen, es kann sehr schädlich sein, wenn jemand versucht, Ihren Fehler auszunutzen. – tadman