Slumpvis val av högerkolumn med <--INCLUDE ?
Moderatorer: Moderatorgrupp, Supportgrupp
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.
Slumpvis val av högerkolumn med <--INCLUDE ?
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?
Re: Slumpvis val av högerkolumn med <--INCLUDE ?
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.
Re: Slumpvis val av högerkolumn med <--INCLUDE ?
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>
Vilka är online
Användare som besöker denna kategori: 10 och 0 gäster



