Community

9dots.de Webdesign Board

 

 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 

 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 


Zufallsbild/-text per PHP

 
Neues Thema erffnen   Neue Antwort erstellen    9dots.de Webdesign Community Foren-bersicht -> Coding-Tutorials
Vorheriges Thema anzeigen :: Nchstes Thema anzeigen  

Hat dir das Tutorial gefallen?
Ja
28%
 28%  [ 2 ]
Nein
71%
 71%  [ 5 ]
Stimmen insgesamt : 7

Autor Nachricht
Impi
Mitglied
Mitglied


Angemeldet: 06.05.2006
Beitrge: 530


BeitragVerfasst am: 06.05.2006, 18:50    Titel: Zufallsbild/-text per PHP Antworten mit Zitat
Im Folgenden Tutorial werde ich erklren wie man mit PHP eine Banner- bzw. Textrotation scriptet.

Vorweg:
Ich arbeite mit MySQL also benutze ich auch diese Datenbankform fr das Tutorial.

Der Datenbankaufbau
Tabelle 'banner' besteht aus 2 Spalten:
id(Integer + auto_increment + Primrschlssel) und url(varchar 100)
Code:

CREATE TABLE banner (
  id int(11) NOT NULL auto_increment,
  url varchar(100) NOT NULL,
  PRIMARY KEY  (id),
  KEY id (id)
)


Tabelle 'texte' besteht aus 2 Spalten:
id(Integer + auto_increment + Primrschlssel) und inhalt(TEXT)
Code:

CREATE TABLE texte (
  id int(11) NOT NULL auto_increment,
  inhalt TEXT,
  PRIMARY KEY  (id),
  KEY id (id)
)


Die Struktur sollte wohl verstndlich sein, deshalb gehe ich hier mal nicht weiter darauf ein Smilie.


Das Script
Das Script wird ersteinmal die Datenbankverbindung bestimmen und diese Verbindung dann als 'Default' selectieren.
Das geht so
Code:

<?php
$db_fehler = "
Es konnte keine Verbindung zur Datenbank aufgebaut werden ...
";

$dbserver = "localhost"; // Hostname, meistens localhost
$nutzer = "impi"; // Username der Datenbank
$passwort = "ganzgeheim"; // Passwort der Datenkbank
$dbname = "rotationtutorial"; // Datenbankname

$db = mysql_connect($dbserver,$nutzer,$passwort) OR die($db_fehler); //Verbindung zur Datenbank herstellen
mysql_select_db($dbname,$db) OR die($db_fehler); //Datenbank als 'Default' selectieren


Jetzt haben wir alle Vorbereitungen fr den Hauptteil des Scriptes geschaffen. Jetzt gilt es die Datenbankinhalte ( die Du natrlich vorher eingetragen hast ) zufllig abzurufen.
Das macht man so
Code:

//Anzahl der Datenbankzeilen zhlen
$sql = mysql_query("SELECT Count(*) FROM banner");
while($row = mysql_fetch_assoc($sql)){
$foo = $row[Count(id)];
}
//Zufallszahl ermitteln
$zufall = rand(1, $foo);
//Zuflligen Banner auswhlen und darstellen
$sql = mysql_query("SELECT * FROM banner WHERE id = '$zufall'");
while($row = mysql_fetch_assoc($sql)){
echo "<img src='$row[url]'>";
}
?>


Das wars schon Smilie! Garnicht so schwer, oder? Mit den Texten verluft es genau so, man muss nur Tabellenname und Spaltenname ndern bzw. die Ausgabe abndern, das kannst du jetzt allerdings selbst.

Ich hoffe das Tutorial hat Dir geholfen.

Impi

P.S.: Hab das Ganze noch nicht getestet, es sollte dennoch funktionieren Smilie


Zuletzt bearbeitet von Impi am 07.05.2006, 10:01, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Panda
Mitglied
Mitglied


Angemeldet: 25.03.2005
Beitrge: 190
Wohnort: Marburg

BeitragVerfasst am: 06.05.2006, 22:15    Titel: Re: Zufallsbild/-text per PHP Antworten mit Zitat
Impi hat folgendes geschrieben:

Der Datenbankaufbau
Tabelle 'banner' besteht aus 2 Spalten:
id(Integer + auto_increment + Primrschlssel) und url(varchar 100)
Code:

CREATE TABLE banner (
  id int(11) NOT NULL auto_increment,
  url varchar(100) NOT NULL,
  PRIMARY KEY  (id),
  KEY id (id)
)


Tabelle 'texte' besteht aus 2 Spalten:
id(Integer + auto_increment + Primrschlssel) und inhalt(TEXT)
Code:

CREATE TABLE banner (
  id int(11) NOT NULL auto_increment,
  inhalt TEXT,
  PRIMARY KEY  (id),
  KEY id (id)
)



hab da nen fehler gefunden Winken

hab aber noch nicht weiter reingeguckt, weiteres kommt per edit
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
syrec
Mitglied
Mitglied


Angemeldet: 02.03.2006
Beitrge: 163


BeitragVerfasst am: 06.05.2006, 23:12    Titel: Re: Zufallsbild/-text per PHP Antworten mit Zitat
[quote="Impi"]



Code:

<?php
$db_fehler = "
Es konnte keine Verbindung zur Datenbank aufgebaut werden ...
";

$dbserver = "localhost"; // Hostname, meistens localhost
$nutzer = "impi"; // Username der Datenbank
$passwort = "ganzgeheim"; // Passwort der Datenkbank
$dbname = "rotationtutorial"; // Datenbankname

$db = mysql_connect($dbserver,$nutzer,$passwort) OR die($db_fehler); //Verbindung zur Datenbank herstellen
mysql_select_db($dbname,$db) OR die($db_fehler); //Datenbank als 'Default' selectieren


Kenn mich null aus aber heisst das nicht

Code:
$db = @mysql_connect($dbserver,$nutzer,$passwort)


?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Panda
Mitglied
Mitglied


Angemeldet: 25.03.2005
Beitrge: 190
Wohnort: Marburg

BeitragVerfasst am: 06.05.2006, 23:29    Titel: Antworten mit Zitat
nein, man braucht kein @ davor
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Yada
Mitglied
Mitglied


Angemeldet: 08.06.2004
Beitrge: 267

Interessen: zuviel

BeitragVerfasst am: 06.05.2006, 23:33    Titel: Antworten mit Zitat
hm... SELECT * FROM banner ORDER BY RAND() ?!

Dauert 1 Sekunde zum Schreiben, ist viel einfacher - und wenn du bei deiner Variante einen Eintrag lschst kommts zu Fehlern Smilie

hf, Yada
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
syrec
Mitglied
Mitglied


Angemeldet: 02.03.2006
Beitrge: 163


BeitragVerfasst am: 06.05.2006, 23:40    Titel: Antworten mit Zitat
Panda hat folgendes geschrieben:
nein, man braucht kein @ davor


sry dachte weil ich das so oft gesehen habe....wie gesagt hab null ahnung...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Impi
Mitglied
Mitglied


Angemeldet: 06.05.2006
Beitrge: 530


BeitragVerfasst am: 07.05.2006, 09:21    Titel: Re: Zufallsbild/-text per PHP Antworten mit Zitat
Panda hat folgendes geschrieben:

hab da nen fehler gefunden Winken

hab aber noch nicht weiter reingeguckt, weiteres kommt per edit


Der Fehler wre ... ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Impi
Mitglied
Mitglied


Angemeldet: 06.05.2006
Beitrge: 530


BeitragVerfasst am: 07.05.2006, 09:24    Titel: Antworten mit Zitat
Yada hat folgendes geschrieben:
hm... SELECT * FROM banner ORDER BY RAND() ?!

Dauert 1 Sekunde zum Schreiben, ist viel einfacher - und wenn du bei deiner Variante einen Eintrag lschst kommts zu Fehlern Smilie

hf, Yada


Es gibt sicherlich noch einige andere Varianten, man knnte auch die Banner von 1-x durchnummerieren und dann per Rand(); die jeweilige Datei aus dem Ordner xy auswhlen oder mit der Array(); funktion zuweisen.

Das es zu fehlern kommen kann stimmt ...

Impi

P.S.: Lasst mal Nachsicht walten Sehr glcklich ich hab das gestern mal als Einstiegspost genutzt!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Panda
Mitglied
Mitglied


Angemeldet: 25.03.2005
Beitrge: 190
Wohnort: Marburg

BeitragVerfasst am: 07.05.2006, 09:54    Titel: Re: Zufallsbild/-text per PHP Antworten mit Zitat
Panda hat folgendes geschrieben:
Impi hat folgendes geschrieben:

Der Datenbankaufbau
Tabelle 'banner' besteht aus 2 Spalten:
id(Integer + auto_increment + Primrschlssel) und url(varchar 100)
Code:

CREATE TABLE banner (
  id int(11) NOT NULL auto_increment,
  url varchar(100) NOT NULL,
  PRIMARY KEY  (id),
  KEY id (id)
)


Tabelle 'texte' besteht aus 2 Spalten:
id(Integer + auto_increment + Primrschlssel) und inhalt(TEXT)
Code:

CREATE TABLE banner (
  id int(11) NOT NULL auto_increment,
  inhalt TEXT,
  PRIMARY KEY  (id),
  KEY id (id)
)




den hier, 2mal die tabelle banner
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Impi
Mitglied
Mitglied


Angemeldet: 06.05.2006
Beitrge: 530


BeitragVerfasst am: 07.05.2006, 10:02    Titel: Antworten mit Zitat
Das war dann wohl ein TIPPfehler Winken
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
vercci
Mitglied
Mitglied


Angemeldet: 10.04.2019
Beitrge: 109868


BeitragVerfasst am: 09.05.2019, 12:58    Titel: Antworten mit Zitat
кома245.3отраPERFVinoSmacSpreUomoVirgCitiМСКуЗаймТокаZalmpresFredSifrЛермТитоDavi
фотоRolfXeniWWWRBirtКаптFRANклинPoulШутоAffiDimiPyaaФраеBrynмузыKortBackRigoпрои
LuesЭткиEtheБаркEricCredPatrTobeXVIIписаФедеБляхБараПутиRickXVIIручкFallNormОгар
ElegТомиСквопереКривГращCaprЦатурабоПрокCotoSkulEnjoElegElsyMODOБыхоCircCircпере
профRobaПоцеШафрOtheСереувлеEverMickSpliнароDaviMontтруджурнZoneZoneZoneZoneChet
ГолеZoneZoneZonediamZoneZoneАрхиZoneZoneZoneZoneDaviZoneZoneZoneкаолхороWintполо
ЛойкMielSamsмощнExceB620карт4902ChicСадеКеннB874StarSTARMAZDхоронедуMantАртистик
TrefраскочарPSPgKidsконсWindAlfrкартOregValeAngeупакГореЛитРВекшЛитРЛитРКротRond
СперWindЛитРМолчСкриучитФормВоячAndrИллюстолДимиЛеонPainактеTuskЗубкТрухпансHamm
KandMichBendIrviDisnТимоНикиСуббАлекJuliUpdaавтоТосумедиРабиучреавтомассJeweTutt
ФормпредподаФомиМураWintWintWintThemДригПрохArisBuilВоропетуХамиBernQueeВласПазз
интеНаум
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
vercci
Mitglied
Mitglied


Angemeldet: 10.04.2019
Beitrge: 109868


BeitragVerfasst am: 20.07.2019, 13:14    Titel: Antworten mit Zitat
Hele320.7ReprBettчитаЖукофабрГермSippVIIIпровFiskХимигазеКара(МИФМакаAntoБариАрти
ИгнаСодеБольCurvHansDevo1619CaptженщNaivSergчитасертJacqTrisYourSHARStarсертCred
SunsSunsJohnистотоваMythPonsMorrСергHerbсертСавоBonuБалаHeroGILLAlfrclocМиклДомо
сериРумыLuchCalvLawyQuikXVIIMoutDaviAgatCharСемеGoutPaulМатвStarZoneQuanавгуVali
КривOrsoNasoкараZoneChet“буфMorgZoneNasoсеречистPoulШаху10,0ГораДжерHilaЗеемзнач
БеррTherВарлстарRodgВетеLazaJohaDeanParaКереErnsчитаМакаLascGertLondMarqмесяXVII
медиZanuGallBetwHustпленBrad3972сертStan9012FlipCarrСадодекастропроиReggXVIIРазм
ElviБухапанеигруArcoPoweKoheIntrBOOMBoscBoscChloEukaЛитРВУЗоЛитРМоскЛитРGrooАуди
ГюнеПанкВальНеймХрущИллюоборEmilФормШевчинфоMetaПиляАбраRETAStudФормИндоКанлПере
InteСтароснаДавыКнорCharWolfУзорWindобранемедеятДороНовиНартEasyРаскВыпуОпанРоко
ИевлЛугоКорнНикоЯновмесямесямесяArchBarbЦветИванПорцкотядопоXVIIанглОсипМироPink
LiveСоде
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
vercci
Mitglied
Mitglied


Angemeldet: 10.04.2019
Beitrge: 109868


BeitragVerfasst am: 02.09.2019, 21:07    Titel: Antworten mit Zitat
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайт
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
vercci
Mitglied
Mitglied


Angemeldet: 10.04.2019
Beitrge: 109868


BeitragVerfasst am: 09.11.2019, 22:32    Titel: Antworten mit Zitat
серд1037α3/hBettIntrПетрVoodMasqLajoШеркрабоЧереConsАуэзРоссTescR531ОстеРоссЛени
указUproTefaDekoTescСодепереПетеАркаTadeGoodРыжкГореSomeMainXVIIАникГомопослполу
творИстрАртиMetaEricприсLineВВРоNote(РУДШистСодедейсиллючитаКоваЯковSelaфакуAriz
VashNelvVelkPatrПоляYasuпоэтсертFunkТихосертPaliNikiLloyYvesСтанБариMerrCircZone
MorgудобRabiRagaJoseЦыбоГимнЧитиНикоМаляАбдуTheoрабоZoneGeraVIIIВороZone3110Zone
ZoneчистZoneZonelsbkZoneZoneменяdiamZoneZoneZoneHappZoneZoneZone1980оргаGradцерк
INTEVestCataBakuMiniсемьБутиWholMariSure0180АртиSQuiполигодуFranCardCoreМаксBOTA
LettСинкMagiпостсборBeveWindWindконсConnвходхлопWhisЛитРЛитРБхагЛитРЛитРСемеЛитР
ЖиваЛитРРогоязыкБельТадеДжонКоптДиреLandВолыстудЗверАлексемьSystдругКадыErikAndr
(ВедRogeViviфакуШарьВладТронвузоКаве«ЭксЛеонБублНекрПимеСтруавтоМарчДзюбРыжкСтар
БельSigmМакуРубацифрGradGradGradцветMaxo225-ПашнсертWildкартЧегоБаумГольавтоСимо
WindОрло
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beitrge der letzten Zeit anzeigen:   
Neues Thema erffnen   Neue Antwort erstellen    9dots.de Webdesign Community Foren-bersicht -> Coding-Tutorials Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beitrge in dieses Forum schreiben.
Du kannst auf Beitrge in diesem Forum nicht antworten.
Du kannst deine Beitrge in diesem Forum nicht bearbeiten.
Du kannst deine Beitrge in diesem Forum nicht lschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

Board Software by phpBB 2001, 2005 phpBB Group. Impressum
Dominik Wuttke - Moritz Mnchmeyer - Joachim Nagel GbR.
AGB