Slumpvis val av högerkolumn med <--INCLUDE ?

Här kan du ställa frågor om problem med och drift av phpBB 3 (3.0.0 eller senare). Det är här du bör skapa en tråd om du har ett problem, vill ställa en fråga och vill ha ett svar. Gäller det något annat, var vänlig bläddra nedåt på sidan.

Moderatorer: Supportgrupp, Moderatorgrupp

Kategoriregler
Här kan du ställa frågor om problem med och drift av phpBB 3 (3.0.0 eller senare). Det är här du bör skapa en tråd om du har ett problem, vill ställa en fråga och vill ha ett svar. Gäller det något annat, var vänlig bläddra nedåt på forumindex.

Klicka här för att se våra allmänna forumregler.
Skriv svar
Användarvisningsbild
HannaZ
Medlem
Medlem
Inlägg: 41
Blev medlem: 2014-09-24 18:30

Slumpvis val av högerkolumn med <--INCLUDE ?

Inlägg av HannaZ » 2014-10-16 17:52

Jag har lyckats lägg till en högerkolumn till mitt theme.
Kolumnen flyter till höger om själva forumen. Det är fyllt med lite länkar, annonser och allmän info.


Jag har 3 olika HTML filer för högerkolumner (alltså, det finns tre varianter) och de läggs till på följande sätt:

<!-- INCLUDE right-hand-column-3.html -->

(sista siffran säger vilken av versionerna det är - alltså kolumn 1, 2 eller 3.)

Nu skulle jag vilja SLUMPA vilken kolumn som visas.
Alltså göra så att det visar antingen right-hand-column-1 eller 2 eller 3.

Men jag är helt fast - mina programmeringskunskaper med php är helt enkelt inte tillräckligt bra. Eller kan man göra det här direkt från HTML med SSI? (mina försök än så länge är totalt misslyckade)

Jag funderade på att man skulle kunna lägga in hela filnamnet i en tabell på databasen, och köra en slumpad SELECT. Men jag vet inte hur man deklararer en variabel i HTML.

Det här är förmodligen ett mycket lätt problem för den som kan teknologin och det finns många sätt att lösa det på. Är det någon som kan rekommendera ett enkelt och lättimplementerat sätt att lösa problemet?

Användarvisningsbild
HannaZ
Medlem
Medlem
Inlägg: 41
Blev medlem: 2014-09-24 18:30

Re: Slumpvis val av högerkolumn med <--INCLUDE ?

Inlägg av HannaZ » 2014-10-17 16:34

Jag kan inte PHP så jag gjorde detta mestadels med SQL och kopierade lite php kod för ändamålet.

Skapa en tabell på databasen som heter rightcolumn. Endast en column behövs, right column.
lägg in namnen på dina html sidor i denna column.

Kör sen scriptet i php sidan i fråga

Kod: Markera allt

/////////////-----------SELECT RANDOM RIGHT COLUMN TO USE--------------------////////////////
//Array with the data to insert
$sql_array = array(
    'rightcolumn'    => 'rightcolumn',
);

// Create the SQL statement
$sql = 'SELECT * FROM ' . rightcolumn . '
        ORDER BY RAND()';

// Run the query 
$result = $db->sql_query($sql);

// $row should hold the data you selected
$row = $db->sql_fetchrow($result);

// Be sure to free the result after a SELECT query                        
$db->sql_freeresult($result);

$template->assign_var('RIGHTCOL', $row['rightcolumn']);

/////////////-----------SELECT RANDOM RIGHT COLUMN TO USE--------------------////////////////

Inkludera columnen genom att använda

<!-- INCLUDE {RIGHTCOL} -->


Det funkar för mig på ViewForum_body.html och i dess phpfil.
Har inte fått det att funka någon annanstans, förmodligen eftersom jag inte vet vilken php fil jag måste lägga koden i. För Viewforum är det enkelt eftersom php filen heter exakt samma sak.

Användarvisningsbild
HannaZ
Medlem
Medlem
Inlägg: 41
Blev medlem: 2014-09-24 18:30

Re: Slumpvis val av högerkolumn med <--INCLUDE ?

Inlägg av HannaZ » 2014-10-17 18:01

Jag är så himla blåst! LOL Dessutom skriver jag en tråd där bara jag själv svarar!
Snacka om att överkomplicera....

Deklarera variabeln i functions.php, på raden nedanför
'T_STYLESHEET_NAME' => $user->theme['theme_name'],
Variabeln är
'RIGHT_COL_ALT' => mt_rand(1, 4), // välj ett slumpvis nummer mellan 1-4

På relevant ställe i HTML, lägg till koden för att öppna filen, tex:
<div class="right-hand-column" style="position: relative; top: -46px">
<!-- IF RIGHT_COL_ALT eq 1 -->
<!-- INCLUDE right-hand-column-2.html -->
<!-- ELSEIF RIGHT_COL_ALT eq 2 -->
<!-- INCLUDE right-hand-column-3.html -->
<!-- ELSEIF RIGHT_COL_ALT eq 3 -->
<!-- INCLUDE right-hand-column-3.html -->
<!-- ELSEIF RIGHT_COL_ALT eq 4 -->
<!-- INCLUDE right-hand-column-2.html -->
<!-- ENDIF -->
</div>

Användarvisningsbild
Sinom
Administratör
Administratör
Inlägg: 1398
Blev medlem: 2010-11-04 21:24
Ort: Tranemo
Kontakt:

Re: Slumpvis val av högerkolumn med <--INCLUDE ?

Inlägg av Sinom » 2014-10-17 21:55

Roligt och se att det löste sig :)
Bild

Skriv svar

Vilka är online

Användare som besöker denna kategori: 2 och 0 gäster