Daniela und Frank Leyhe GbR
Alte Hellersdorfer Straße 141
Berlin
Germany / Berlin / Berlin 12629
Phone: +49 (0)30 889 454 24

URL verbergen

URL verbergen

16 Beiträge / 0 neu
Letzter Beitrag
Mondwolf
Bild des Benutzers Mondwolf
URL verbergen

Hei an alle,

folgendes "Problem". Hab in meinem Forum einen Adventskalender eingebaut, der mittels JavaScript über php jeweils eine Seite aufruft. Ruft jemand ein Fensterchen zu früh auf, erscheint ein PopUp, dass er schummeln will. smiley

Wird eine Seite richtig aufgerufen, erscheint dann oben in der URL .../1.php oder 2.php... usw.

Wennjetzt ein User die URL verändert, indem er z.B. heute schon ...5.php eingibt, kommt auf die Kalenderseite 5. Dezember. Hier greift das PopUp nicht mehr.
Meine Idee ist nun, diese URL zu verbergen oder nur die Hauptdomain anzuzeigen.

Wie gesagt, es existieren 24 php-Seiten für die Fenster und jede php ruft dann ein Template ab.

LG vom Wolf

Bearbeitet von: Mondwolf an 02.12.2012 - 15:09
Frank
Bild des Benutzers Frank
Sowas sollte über das Server

Sowas sollte über das Server Datum laufen. Man fragt über den Server das Datum ab und sollte der Server z.b. 05.12. melden wird die Seite 5.php angezeigt, wenn nicht dann die Seite mit dem Schummelhinweis.

 

Mondwolf
Bild des Benutzers Mondwolf
Hei Frank,

Hei Frank,

also heute ist der 03.12. und beim Abruf des Adventfensters heißt die Seite
www.inselder...bla...wbb2...bla.../3.php
Macht nun einer aus der 3 eine 4, kann er die Seite für den 4.12. aufrufen. Klickt er jedoch im Kalender heute auf die 4 erscheint die "Schummel-Seite", wie es das JavaScript vorgibt.

Darum wollte ich, dass als URL nur die Grund-Adresse des Forums drin steht. Geht das irgendwie ?

Und wenn das über das Server Datum geht, wie geht das dann genau ?

LG Jürgen 

Frank
Bild des Benutzers Frank
Öffne die jeweilige Tag PHP

Öffne die jeweilige Tag PHP auf und trage dann nach

<?php

folgendes ein (die 5 steht für 5.12. und wäre dann in der 5.php einzutragen - 6 ist dann in der 6.php zu nehmen, 7 in der 7.php usw.):

if(date("w") == 5){

und ÜBER ?> am Ende

}else{
exit("Geschummelt wird nicht!");}

Innerhalb von exit(" ") könnte man dann aber auch HTML Code nutzen um es hübscher zu gestalten.

Mondwolf
Bild des Benutzers Mondwolf
Habs probiert, funzte nicht.

Habs probiert, funzte nicht.

So sieht die php für den 4.12. aus, natürlich jetzt ohne Deinen Zusatz.

 

<?php 

 require_once('./global.php');

 require_once('./4.php');

if(!$wbbuserdata['userid']) access_error();

 

 if (isset($_REQUEST['action'])) $action = $_REQUEST['action']; 

 

 else $action = '4'; 

 

 if ($action == '4') 

 { 

  eval("\$tpl->output(\"".$tpl->get("vier")."\");");

 } 

 ?>

Frank
Bild des Benutzers Frank
<?php

<?php
if(date("w") != 4){exit("Nicht schummeln!");}
if(date("w") == 4){
require_once('./global.php');

require_once('./4.php');

if(!$wbbuserdata['userid']) access_error();

if (isset($_REQUEST['action'])) $action = $_REQUEST['action'];

else $action = '4';

if ($action == '4')

{

eval("\$tpl->output(\"".$tpl->get("vier")."\");");

}
}
?>

Probiere mal so. Das date("w") ruft vom Server den aktuellen Tag ab. In diesem Fall also 3. Sollte der Wert dann nicht 4 sein != 4 wird die Meldung Nicht schummeln ausgegeben. Ist der Wert 4 dann kommt die Seite. Funktioniert eigentlich immer.

Mondwolf
Bild des Benutzers Mondwolf
Hihi, was heißt immer ? Du

Hihi, was heißt immer ? Du kennst das doch, was bei allen funktioniert, muss bei mir noch lange nicht funktionieren sad

Also es klappt nicht, warum auch immer. Habs so übernommen, aber er zeigt Seite "4.php" an,

wenn ich sie in der Adresszeile eingebe.
Wenn Du nicht noch ne fixe Idee hast lass gut sein, lohnt nicht deswegen lange zu wurschteln. 

LG Jürgen

Frank
Bild des Benutzers Frank
Wieso? Geht doch.

Wieso? Geht doch.

Rest per PN.

Mondwolf
Bild des Benutzers Mondwolf
Also, es funzt, hab nur noch

Also, es funzt, hab nur noch ein kleines Problem.

Wenn ich bei if(date("w") != 4){exit("Nicht schummeln!");}

statt dem Schummeln die URL zu dem PopUp-Fenster eingebe, erscheint nicht das Fenster sondern in diesem Fall:

http://www.inselderbegegnung.de/wbb2/Inseladvent2012/nochnicht.htm (als Text)

Wie genau muss das rein ? Oh menno, ich merke gerade, dass ich mal wieder nerve... blush

LG Jürgen

Frank
Bild des Benutzers Frank
Da gibt es verschiedene Wege.

Da gibt es verschiedene Wege. Einer wäre über den PopUpGenerator:

http://www.meine-erste-homepage.com/popup/popup.html

Allerdings muss man da einiges Vorbereiten. Ein anderer geht über script alert Funktion.

Damit wird ein Warnfenster angezeigt. Und dort dann den Inhalt der besagten Seite dann rein.

Eine weitere Möglichkeit wäre:

Eine variable innerhalb der x.php am Anfang zu setzen.

$schummel="INHALT DER HTML SEITE";

und bei exit("Nicht schummeln!"); ERSETZEN mit:

exit("$schummel");

Mondwolf
Bild des Benutzers Mondwolf
Ach da lass ich mal die

Ach da lass ich mal die Finger davon, so reicht es auch. Allerdings klappt es doch nicht, denn es war der 4. Dezember und es ging weiterhin die Seite mit dem Schummeln auf.

Hab jetzt zur Sicherheit mal die php vom 3.12. geändert und es kommt bitte nicht schummeln.

Schade, zu früh gefreut.

Frank
Bild des Benutzers Frank
Na du musst ja auch jede

Na du musst ja auch jede Seite so entsprechend ändern.

 

Und dran denken:

 

if(date("w") != 4){exit("Nicht schummeln!");}
if(date("w") == 4){

 

Die jeweilige 4 steht für den 4.12. in der Datei 5.php muss dann die 4 zur 5 werden. usw.

Mondwolf
Bild des Benutzers Mondwolf
Ach Frank, das habe ich doch.

Ach Frank, das habe ich doch. Ich habe die 4.php so geändert wie es oben steht. Und er hat mir gestern auch "Nicht schummeln" angezeigt.

Habe dann heute Nacht, also am 04.12. Browser und alles aktualisiert und auf den Kalender auf die 4 geklickt und er zeigt weiterhin "Nicht schummeln" an, sprich er ignoriert, dass inzwischen der 4.12. ist..

Zur Sicherheit habe ich mal die php vom 3.12. verändert, natürlich alles auf 3 und es wird mir dann beim Klick auf die 3 im Kalender auch nur "Nicht schummeln" angezeigt.

Sag mal, stimmt die Variable "w" ?  Von 1 bis 31 sollte "j" sein, aber er zeigt mir das Selbe an.

Frank
Bild des Benutzers Frank
hmm, w stimmt schon. Das er

hmm, w stimmt schon. Das er am 3.12. das so macht stimmt schon da != 3 sagt, ist der Tag nicht 3 kommt das andere. Müsste man dann das != nur ändern in >

Bedeutet ist der Wert größer als dann wird Nicht schummeln angezeigt.

Ich schaue es mir nachher noch einmal an. Lasse mir dann mal das Datum ausgeben, was vom Server kommt. Melde mich dann wieder.

Frank
Bild des Benutzers Frank
Bitte nehme die Datei:

Bitte nehme die Datei:

http://www.inselderbegegnung.de/wbb2/3.php

als Muster (nur die exit am Ende evtl. noch mal ändern).

Dort habe ich nun die Abfrage so geändert das man den Eintrag sehen kann, wenn der Tag erreicht ist oder schon war. Liegt der Tag in der Zukunft kommt die entsprechende Meldung "Nicht schummeln".

Mondwolf
Bild des Benutzers Mondwolf
He super, habe gerade den

He super, habe gerade den Nikolaustag fertig gemacht und auf 00:00 Uhr gewartet. Funzt einwandfrei. Hab vielen Dank ! Nun haben die Schummler keine Chance mehr smiley.

LG Jürgen 

Benutzeranmeldung

Um automatisierten Spam vorzubeugen lassen Sie dieses Feld leer.

Social