Zum Inhalt springen
ThreadPHP & MySQL

DB auslesen und ausgeben

Kategorie
PHP & MySQL
Gelesen
678
Antworten
2
Erstellt von: gelöschter BenutzerDatum: 18.11.2018, 12:25 Uhr
Archiv-KommentarArchiviert, nicht priorisiertCMS & technische Umsetzung

Redaktionelle Einordnung

Diese archivierte Diskussion behandelt DB auslesen und ausgeben aus Sicht der Rubrik PHP & MySQL.

CMS- und Technikfragen sind heute besonders dann relevant, wenn sie Indexierung, Rendering, interne Verlinkung oder Relaunch-Risiken beeinflussen.

Sinnvoll nutzbar bleibt der Thread vor allem als historischer Kontext, für typische Fragestellungen und zur Einordnung älterer Empfehlungen.

Einige im historischen Thread genannte Tools, Dienste oder externe Links könnten heute nicht mehr verfügbar oder inhaltlich überholt sein. Nutzen Sie sie bitte nur mit zusätzlicher Prüfung.

Startbeitrag

Originaler Foreninhalt in modernisierter Darstellung.

Zur Kategorie
gelöschter Benutzer
Threadstart · PHP & MySQL 678 mal gelesen · 18.11.2018, 12:25 Uhr

Hallo zusammen

Ich habe eine DB-Tabelle twitter mit den Spalten Konto und Organisation.

Diese möchte ich auslesen und auf der Webseite ausgeben lassen.

Das ich mit mysql auf Kriegsfuß stehe ist ja bekannt. Bislang habe ich mir das hier zusammen geknobelt:

function twitter_accounts(){
global $wpdb;
$accounts_query = "SELECT * FROM $wpdb->twitter ORDER BY RAND() LIMIT 3";
$accounts = $wpdb->get_results($accounts_query);
if ( !empty($accounts)) {
foreach ($accounts as $account) :
echo '

';
endforeach;
}
}


Leider erfolgt keine Ausgabe

Antworten

2 Beiträge
gelöschter Benutzer
am 18.11.2018, 22:07 Uhr schrieb
Antwort

Woo, eine technische Frage! Ich wüsste nicht, woher das $wpdb-Objekt eine Twitter-Eigenschaft haben sollte. Gibt es stattdessen vielleicht eine Twitter-Tabelle mit dem WordPress-Prefix? Außerdem verwendest Du die undefinierten Variablen $organisation und $konto. Sind das möglicherweise Spalten in der Twitter-Tabelle? Und drittens möchtest Du die Ausgabe vermutlich in einer Liste und nicht eine separate Liste für jeden Treffer.

Wenn die 3 Vermutungen zutreffen, könnte das hier funktionieren:

function twitter_accounts() {
global $wpdb;
$accounts_query = "SELECT * FROM " . $wpdb->prefix . "twitter ORDER BY RAND() LIMIT 3";
$accounts = $wpdb->get_results($accounts_query);
if (!empty($accounts)) {
echo \'

\';
}
}

gelöschter Benutzer
am 19.11.2018, 10:16 Uhr schrieb
Antwort

Hi!

Danke erst einmal für den Lösungsvorschlag.

Ist kaum zu glauben, aber ich habe es dann doch (fast alleine) noch gebacken bekommen, die Funktion entsprechend umzubauen, das es funktioniert.

Zur Zeit lasse ich jeweils einen Account zufällig in der Sidebar ausgeben.

Sie sieht bei mir jetzt so aus:

/*twitter-Accounts*/
function twitter_accounts(){
global $wpdb;
$accounts_query = "SELECT konto, organisation FROM twitter GROUP by ID ORDER BY
RAND() LIMIT 3";
$accounts = $wpdb->get_results($accounts_query);
foreach ($accounts as $account)
$tw = $account->konto;
$tw = $account->organisation;
echo $account->organisation . \' konto . \'"
title="twitter-Account von \' . $account->organisation . \'">\' . $account->konto .
\'

\';


Wenn ich genügend twitter-Accounts gesammelt habe, schwebt mir vor, das ich sie je nach dem, welcher Kategorie der Artikel, der gerade gelesen wird, zugeordnet ist, ausgeben lassen will.

Zur Erklärung: Ich betreibe ein regionales Magazin, das nach den Samtgemeinden und Orten im Landkreis untergliedert ist