Eine von mehreren Optionen zufällig ausführen - Javascript
Eine von mehreren Optionen zufällig ausführen - Javascript
Hallo,
stehe vor einem kleinen Problem. Ich habe in einem Head-Tag eines html-dokuments zwei automatische popups.
Ich möchte aber gerne immer nur eines der beiden aufgehen lassen und nicht beide. Das ganze soll per Zufall geschehen.
Wie löse ich das am besten?
Habe bisher nur die math.random funktion gefunden.
stehe vor einem kleinen Problem. Ich habe in einem Head-Tag eines html-dokuments zwei automatische popups.
Ich möchte aber gerne immer nur eines der beiden aufgehen lassen und nicht beide. Das ganze soll per Zufall geschehen.
Wie löse ich das am besten?
Habe bisher nur die math.random funktion gefunden.
Re: Eine von mehreren Optionen zufällig ausführen - Javascript
Ich habe keine Ahnung von JavaScript aber:
Je nachdem was da für Zahlen generiert werden, die größtmöglich Zufallszahl / 2 damit man die Mitte hat und eine 50:50 (ok nicht ganz wegen dem = aber das ist hoffentlich nicht so wichtig sonnst lass bei der Mitte nochmal alles zu Fallen
)
Code: Alles auswählen
if (zufallszahl() >= 0.5)
{
//Popup 1
}
else
{
//Popup 2
}

Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
Standardmäßig antworte ich nicht auf PMs
Re: Eine von mehreren Optionen zufällig ausführen - Javascript
danke, aber wenn ich das ganze mit php löse habe ich wieder das template problem. In php kann ich die popups ja nicht aufrufen lassen, sondern es muss defakto im head des templates geschiehen. Nun könnte ich zwar die variablen übernehmen aber wie soll ich den window befehl denn dann ausführen?
also per if-befehl wird das dann schon schwer..
ich könnte zwar:
if (zufallszahl () >= 0.5)
{
echo "Text1";
}
else
{
echo "Text2";
Aber wie soll ich da ein zufälliges popup aufrufen lassen?
Hätte doch eine Idee:
if (zufallszahl () >= 0.5)
{
$popup = "window.location...1";
}
else
{
$popup = "window.location...2";
}
und dann eben im template
<script>aktion = $popup;</script>
nur weiß ich nicht, ob JS dann das auch liest, wie html
also per if-befehl wird das dann schon schwer..
ich könnte zwar:
if (zufallszahl () >= 0.5)
{
echo "Text1";
}
else
{
echo "Text2";
Aber wie soll ich da ein zufälliges popup aufrufen lassen?
Hätte doch eine Idee:
if (zufallszahl () >= 0.5)
{
$popup = "window.location...1";
}
else
{
$popup = "window.location...2";
}
und dann eben im template
<script>aktion = $popup;</script>
nur weiß ich nicht, ob JS dann das auch liest, wie html
Re: Eine von mehreren Optionen zufällig ausführen - Javascript
genau. dann aber den code
in die functions.php und dort dann als variable deklarieren
und dann im template
so muss das böse php in templates nicht aktiviert werden...
Code: Alles auswählen
$popup
in die functions.php und dort dann als variable deklarieren
Code: Alles auswählen
'POPUP' => $popup,
Code: Alles auswählen
<script type="text/javascript">
// <![CDATA[
aktion = {POPUP};
// ]]>
</script>
Re: Eine von mehreren Optionen zufällig ausführen - Javascript
es geht nicht um phpbb, ist ein eigenes script
Könnte ich zwar in meine functions.php schreiben, sehe dann aber nicht den Sinn, weil ich es einmal brauche.

Re: Eine von mehreren Optionen zufällig ausführen - Javascript
Das hat sich nun erledigt. Danke!
Jetzt wärs nett, wenn mich vielleicht noch jemand zu sessions anleiten könnte.
Ich möchte, dass das Popup nur einmal angezeigt wird und beim Page-Reload nicht noch einmal.
Jetzt wärs nett, wenn mich vielleicht noch jemand zu sessions anleiten könnte.
Ich möchte, dass das Popup nur einmal angezeigt wird und beim Page-Reload nicht noch einmal.
Re: Eine von mehreren Optionen zufällig ausführen - Javascript
http://www.usegroup.de/software/phptuto ... sions.html
(Erster Link bei Google mit dem Stichwörtern PHP+Sessions
Damit dann einfach eine Session starten dann folgenden Code verwenden:
Und dann mit folgendem Code auslesen:
alternativ könntest du in $_SESSION["popup"] auch speichern, welches popup der User sich bereits angeschaut hat und dann entsprechend das andere anzeigen.
(Erster Link bei Google mit dem Stichwörtern PHP+Sessions
Damit dann einfach eine Session starten dann folgenden Code verwenden:
Code: Alles auswählen
$_SESSION["popup"]=false;
Code: Alles auswählen
if($_SESSION["popup"]==false)
{
$popup=""; //Oder eine beliebige andere Aktion, die dann angezeigt werden soll, wenn das popup schon gezeigt wurde
}
else
{
$popup=((zufälliges PopUp, Code von vorhin))
}
Mit Freundlichen Grüßen, Valerion.
Administrator von http://www.aquarion.org
Bitte postet PHP-Codes immer immer mit
Administrator von http://www.aquarion.org
Bitte postet PHP-Codes immer immer mit
Code: Alles auswählen
und nicht mit [code]!
Re: Eine von mehreren Optionen zufällig ausführen - Javascript
wenn ich aber das mit der session in einen if-befehl schreibe, wird der ja ausgeführt, weil die session vorhanden ist...
Hab im Moment folgenden Code:
Hab im Moment folgenden Code:
Code: Alles auswählen
$_SESSION["popup"]=false;
$zahl = rand (0,1);
if($_SESSION["popup"]==false)
{
$popup="";
}
elseif ($zahl<=0.5)
{
$popup = "window.open('index.php5?s=41','Veranstaltungen', 'width=250, height=580')";
}
else
{
$popup = "window.open('index.php5?s=42','Angebote', 'width=580, height=250')";
}
Re: Eine von mehreren Optionen zufällig ausführen - Javascript
Code: Alles auswählen
<?php
/************************* KONFIGURATION *************************/
$keine_werbung=true; //Wenn keine_werbung auf true gesetzt wird, dann ist es möglich, dass ab der 3. Seite keine Werbung mehr angezeigt wird, wird es auf false gesetzt, dann wird auf jeder Seite Werbung angezeigt
/************************* KONFIGURATION ENDE *************************/
session_start();
//$zahl = rand (0,1); **Wird nicht mehr benötigt** - Immer in der Reihenfolge erste Werbung - Zweite Werbung
if($_SESSION["last_popup"]==3) //Nur wenn SESSION["last_popup"] auf 3 gestellt ist
{
$popup="";
}
elseif ($_SESSION["last_popup"]!=2 || empty($_SESSION["last_popup"]) //last_popup darf nicht 2 (Sprich diese Werbung) sein
{
$popup = "window.open('index.php5?s=41','Veranstaltungen', 'width=250, height=580')";
if( $_SESSION["last_popup"]==1 && $keine_werbung) $_SESSION["last_popup"]=3;
else $_SESSION["last_popup"]=2;
}
else
{
$popup = "window.open('index.php5?s=42','Angebote', 'width=580, height=250')";
if( $_SESSION["last_popup"]==2 && $keine_werbung) $_SESSION["last_popup"]=3;
else $_SESSION["last_popup"]=1;
}
else
{
$popup = "window.open('index.php5?s=42','Angebote', 'width=580, height=250')";
//Trifft nur zu, wenn last_popup weder auf 1, 2, oder 3 gestellt ist, nur zur Sicherheit
}
Auf der ersten Seite
index.php5?s=41
anzeigen, und auf der zweiten seite
index.php5?s=42
anzeigen und auf der dritten Seite garnichts mehr anzeigen.
Hinweis: Diese Variante funktioniert nur, wenn Cookies aktzeptiert werden, andernfalls wird immer die erste Werbung angezeigt.
Keine Garantie auf Richtigkeit.
Mit Freundlichen Grüßen, Valerion.
Administrator von http://www.aquarion.org
Bitte postet PHP-Codes immer immer mit
Administrator von http://www.aquarion.org
Bitte postet PHP-Codes immer immer mit
Code: Alles auswählen
und nicht mit [code]!
Re: Eine von mehreren Optionen zufällig ausführen - Javascript
Also in deinem Code liegen syntaxbedingte Fehler. Ich habe mal versucht, die Schleifen umzubauen, allerdings ist die fehlermeldung unlogisch.
Unexpected "}"...was egtl nicht sein kann, da das dort schon richtig war...aber vielleicht findest du deinen Fehler.
Danke schonmal
Unexpected "}"...was egtl nicht sein kann, da das dort schon richtig war...aber vielleicht findest du deinen Fehler.
Danke schonmal