Bei dem Reloaden was andes anzeigen....

  • Themenstarter Themenstarter jaylibII
  • Beginndatum Beginndatum
J

jaylibII

HuHu

hab mal eine Frage und wie könnte ich das umsetzten, dass ich jedes mal wenn meine Seite neu geladen wird etwas neues angezeigt wird.

Damit meine ich dann ganze genu:

Ich habe zwei Dateien die werden Includet jetzt möchte ich, jedesmal, wenn ich die Seite neu lade, dass dann die andere Datei kommt.

Eine Alternative währe, dass ich das alles in eine Datebank lege und dann da eben auslese.

Was wurdet Ihr denn machen und das ist besser? Wenn das mit der DB wie müsste ich das dann machen?

Gruß jaylibII
 
Hi du!

Wieso machst du sowas nicht mit einem Zufallswert, der dann entscheidet welche Datei inlcudet wird? Oder muss immer beim neuladen die andere Datei kommen?

Lg,
Manuel

P.S. Was genau willst du denn inlcuden? Wenn du verschiedene Seiteninhalte includen willst kann dies schnell disorrientierend wirken und den Wiedererkennungswert senken ;)
 
@ShadowMan,

Hallo,

hmm nee ich habe ein paar Events und die will ich einfach per Zufall includen bzw. anzeigen lassen. Aber leider kenne ich mich mit PHP noch net so gut aus und weiß deshalb nicht wie ich das machen muss.

Also wie oft was kommt ist eigentlich egal es sollte einfach immer was anderes kommen, dann aber wenn das Datum vorbei ist dann sollte das aber nimmer angezeigt werden und wenn ein Datum noch in der Zukunft liegt dann sollte das auch nicht angezeigt werden, verstehst du was ich meine?

Gruß jaylibII
 
Dann schau dir einfach mal diese Seite an:

http://www.schattenbaum.net/php/

Dort finde ich die Grundlagen sehr gut erklärt. Dort findest du auch Infos zum Thema Datum. Was genau du meinst, dass etwas nach einem Datum nicht mehr angezeigt werden soll weiss ich nicht.
Gehts um eine Art Newsscript oder was?

Lg,
Manuel
 
Hallo,

die Seite wo du gerade genannt hast die kenne ich schon :-) ein wenig kann ich auch schon eben nur noch nicht so viel.

Also nun will ich dir das nochmals genauer erklären.

Ich habe hier eine Datenbank:

CREATE TABLE `PartyTip` (
`id` INT( 6 ) NOT NULL AUTO_INCREMENT ,
`tiel` VARCHAR( 200 ) NOT NULL ,
`text` VARCHAR( 200 ) NOT NULL ,
`telefon` VARCHAR( 200 ) NOT NULL ,
`fax` VARCHAR( 200 ) NOT NULL ,
`url` VARCHAR( 200 ) NOT NULL ,
`location` VARCHAR( 200 ) NOT NULL ,
`verbindung` VARCHAR( 200 ) NOT NULL ,
`abfang` DATE NOT NULL ,
`ende` DATE NOT NULL ,
PRIMARY KEY ( `id` )
);

Dort stehen jetzt dann ein paar Sachen drin. Nun will ich auf einer Seite per zufall immer eines anzeigen lassen.

Das ist dann eben das erste Problem wo ich habe wie ich das machen, dass der immer was anderes anzeigt.

Dann das zweite: In der Tabelle ist da ein Anfang und ein Ende da soll eben dann stehen:

Anfang: 22.03.2005

Ende: 24.03.2005

Dann soll eben der Datensatz auch nur in der Zeit angezeigt werden, wenn die Zeit vorbei ist dann soll er zwar in der Datenbank bleiben aber nimmer angezeigt werden.

Wenn ich aber nun ein Datum eintrage das so heißt:

Anfang: 23.04.2005

Ende: 24.04.2005

Dann soll das JETZT nicht angezeigt werden sondern eben erst ab dem 23.04.2005

Verstehst du was ich meine? Ich hoffe ich habe das ausführlich nun geschrieben :-)

Joa und da komme ich eben nicht weiter...

Gruß
 
Hmm hat niemand ein Tipp wie ich das machen kann oder geht das gar nicht wie ich mir das vorstelle? :confused:
 
Vom Aufbau her, finde ich es eigentlich ganz simple, nur bei der Umsetzung in PHP kann ich nicht so behilflich sein.

- Du trägst in die Datenbank deine Events ein. Wichtig hierbei ist, dass bei jedem ein Datum vorhanden ist.
- Du gibst alle Events, bei denen das Datum gleich mit dem heutigen Datum ist, aus. Dabei sollte ein Zufallsprinzip genügen, sodass die Events immer wechseln.

Am besten du versuchst einfach mal, soetwas ohne viele Extras zu programmieren und bei Problemen postest du hier einfach deinen PHP, bzw. MySQL Code.
 
Hallo,

Sorry dass ich mich jetzt erst wieder melde aber ich hatte ein paar andere Sachen zu tun. Aber ich habe auch ein wenig was gemacht.

So nun habe ich mal ein Formular, dass ich die Daten in die Datenbank eintragen kann. Der Code dafür sieht wie folgt aus:

PHP:
if(!empty($_POST))
{
		$sql = "INSERT INTO PartyTip 
				(
					name,
					ueberschrift,
					text,
					telefon,
					fax,
					url,
					location,
					verbindung,
					anfang,
					ende,
					datum
				)
				VALUES
				(
					'" . $_SESSION['nick'] . "',
					'" . addslashes($_POST["ueberschrift"]) . "',
					'" . addslashes($_POST["text"]) . "',
					'" . addslashes($_POST["telefon"]) . "',
					'" . addslashes($_POST["fax"]) . "',
					'" . addslashes($_POST["url"]) . "',
					'" . addslashes($_POST["location"]) . "',
					'" . addslashes($_POST["verbindung"]) . "',
					'" . addslashes($_POST["anfang"]) . "',
					'" . addslashes($_POST["ende"]) . "',
					NOW()
				)
				";
		mysql_query($sql) OR die(mysql_error());
		
		header("Location: ");
exit;
}
?>

So nun sind die Daten in der Tabelle drin. Wie muss ich jetzt nun weiter machen, dass er folgendes macht:

- in der Tabelle gibts zwei Spalten die wo folgt aussehen: Anfang und Ende damit ist gemeint, dass er eben ab ANFANG das anzeigen soll und ab ENDE nicht mehr anzeigen soll.

- er soll auf einer Seite wo ich das dann ausgeben lassen tu immer per zufall ein Event ausgeben lassen

Ich hoffe ich habe das so geschrieben, dass jeder das auch versteht der mich hilft.

Gruß jaylibII
 
Zuletzt bearbeitet von einem Moderator:
Hi jaylibll,

Wenn ich du wäre, würde ich das Datum nicht als DATE, sondern als INTEGER in der Datenbank speichern - und zwar genauer gesagt als UNIX-Timestamp (also die Anzahl Sekunden, die seit dem 01.01.1970 vergangen sind). Dann könnte deine MySQL-Abfrage so ähnlich aussehen:
PHP:
mysql_query('SELECT ... FROM `PartyTip` WHERE anfang < '.time().' AND '.time().' < ende ORDER BY RAND() LIMIT 1');
[phpf]time[/phpf] liefert dir den aktuellen Timestamp.

Eine Anmerkung noch: Ich hab hier mal gelesen, dass der MySQL-interne Zufallsgenerator nicht wirklich gut ist, also dass er z. B. oft hintereinander den gleichen Wert zurückgibt - probier's also bei Bedarf mal mit der PHP-Funktion [phpf]rand[/phpf].
 
Hi,

danke ich werde mir das gleich mal ansehen, wenn ich noch Fragen haben, dann melde ich mich nochmals.

Gruß jaylibII
 
Zurück