Ich habe etwas HTML in einer Variablen, die ich 4 Mal pro Zeile loopen möchte. Ich mache zuerst ein paar Fragen. In einem bekomme ich die Anzahl der Zeilen und speichere sie in einer Variablen. In der Sekunde suche ich die zugehörigen Daten, die ich anzeigen muss.Hinzufügen von 4 Artikel pro Zeile in PHP
$results = $dbCon->query("SELECT * FROM table WHERE status = '1' ORDER BY id DESC LIMIT $start, $limit");
$total = mysqli_num_rows($results);
$res = $dbCon->query($results);
$data = $res->fetch_assoc();
$link = $data['link'];
$title = $data['title'];
$image = $data['image'];
$imgAlt = $data['imgAlt'];
Drittens, ich speichere, was ich in einer Variablen anzeigen möchte. Die HTML-I auf die Anzeige der Planung sieht so etwas wie dieses
$html = printf("<div style=\"text-align:center; max-width:270px; white-space:normal; word-wrap:break-word; border-left:1em solid transparent; border-right:1em solid transparent; text-overflow: ellipsis; float:left;\">
<a href=\"%s\">
<img style=\"width:270px; height:232px; margin-bottom:40px; border-radius:45px; -moz-border-radius:45px; -webkit-border-radius:45px; box-shadow:0px 0px 3px #fff; -moz-box-shadow:0px 0px 3px #fff; -webkit-box-shadow:0px 0px 3px #fff;\" src=\"images/recentshoots/%s\" alt=\"%s\" />
<p>%s</p> <br /></a>
</div>", $link, $image, $imgAlt, $title);
Als nächstes würde ich die 20 Artikel mögen Schleife pro Seite in 4 Artikel pro Zeile. Hier habe ich einige Probleme. Mein Problem ist, dass die Anzahl der Zeichen im Titel $ immer unterschiedlich ist, so dass das Layout auseinander bricht. Zuerst versuchte ich einen einfachen Weg mit CSS und PHP, um ein str_pad() zu tun, aber es scheint nicht mit leeren Räumen zu arbeiten. Ich bekomme immer ein paar Container, die größer sind als andere, die meine Reihe verzerren. Also habe ich einige Nachforschungen in dieser Plattform gemacht, um nach einem anderen Beispiel zu modellieren.
Ich habe Probleme mit dem, was ich gefunden habe, weil die Beispiele, die ich gesehen habe, fehlende Informationen haben, die ich verstehen muss, wie ich meine eigenen ändern kann. Ich habe es mit foreach und while-Schleifen gesehen. Kann mir jemand helfen, einen Weg zu finden, dies besser zu verstehen?
Wie kann ich die abgerufenen Daten loopen und sicherstellen, dass nur 4 pro Zeile auf einer Seite mit 20 Elementen vorhanden sind? Vielen Dank für deine Hilfe. Ich fing mit so etwas an
$startingPoint = 1;
echo "<div class=\"row\">";
foreach($startingPoint < 4){ //this foreach is not even starting the right way, how can I fix this?
echo $html;
}
Kann ich eine foreach verwenden? oder eine while-Schleife? oder Do-While?
Welches ist die beste Lösung und der schnellste oder effizienteste Weg? Je kürzer der Code, desto besser.
Ich mag was du hier hast, ich habe nur ein paar Fragen. Gibt es eine Möglichkeit, über einen Messenger zu sprechen? Meine Paginierungsklasse sieht ungefähr so aus, wenn sie aufgerufen wird. '$ start = $ Paginierung-> prePagination();' und ich füge es direkt über meine SQL-Abfrage. Das Limit der Seiten wird mit $ limit festgelegt. Irgendwelche Vorschläge oder Änderungen an Ihrem Beispiel, die mir weiterhelfen könnten? Da das Beispiel für die Paginierung groß ist, ist es jedoch einfach, es zu pflegen und wiederzuverwenden. Vielen Dank für Ihre Zeit. –
Auch wo ist der beste Ort, um den HTML-Code "
Meine Freude @RookieRecruits.Sorgen Sie nicht, Sie können verwenden, was immer Sie wollen, dass PHP erlauben, nicht verwirrt werden. Ich habe erneut bearbeitet und initialisieren eine Tabelle für Ihr besseres Verständnis. Sie können '
' verwenden Sie können Ihre benutzerdefinierte Paginierungsfunktion verwenden, aber die Funktion enthält immer diese Art von Code, die ich zur Verfügung gestellt habe.Sie können Ihre eigene Abfrage-Methode verwenden und immer Daten werden gleich Sortierung können Sie innerhalb SqlQuery tun (Reihenfolge von). – AHJeebon