Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Bildergalerie mit PHP

Frage Entwicklung PHP

Mitglied: 46356

46356 (Level 2)

07.03.2008, aktualisiert 30.03.2008, 4404 Aufrufe, 5 Kommentare

Hallo!

Ich versuche mit PHP eine Bildergalerie zu progrmmieren...
Ungefähr so:

bdbfb6500ebf936112c562f4e58ef107-bilder - Klicke auf das Bild, um es zu vergrößern


Die Urls werden von einer Datenbank abgerufen...

01.
while($row = mysql_fetch_object($ergebnis)) 
02.
03.
   $Url = $row->Url; 
04.
   $Name = $row->Name; 
05.
 
06.
   $Photo = "<img src='/.$Url' width='200px' height='112.5px'>"; 
07.
          	echo '<table border="0" width="600px">'; 
08.
          	echo '<tr>'; 
09.
		echo '<td>'; 
10.
		echo $Photo; 
11.
 		echo '</td>'; 
12.
		echo '</tr>';

Und da habe ich schon mein erstes Problem:
X Die Bilder werden untereinander aufgerufen (sie sollten in einer Tabelle wie oben in der Grafik zu sehen ist stehen...)

Und nun hätte ich noch gerne, dass bei mehr als 9 Bildern das untere rechte Bild durch ein Standardbild (next.jpg) ersetzt wird...

Lg. Alex
Mitglied: filippg
08.03.2008 um 20:32 Uhr
Schleifen sind schön und gut, mann mus nur wissen, was alles reingehört und was nicht. Wenn du in jedem Schleifendurchlauf eine neue Tabelle erstellst, dann hast du nachher halt x Tabellen, die alle untereinander stehen.
Schau dir halt mal den HTML-Quelltext der von dir generierten Seite an.

Und zu dem anderen Problem... halt mitzählen, wie viel ausgegeben wurden und dann entsprechend ersetzen. if und else sollten dir bekannt sein. Geschickt ist es auch, die SQL-Abfrage zu begrenzen, so dass nicht alle zurückgegeben werden.

Gruß

Filipp
Bitte warten ..
Mitglied: 46356
08.03.2008 um 21:23 Uhr
Hallo!

Dank für Deine Antwort!

Das if Problem konnte ich schon heute morgen lösen...
Aber beim anderen, da weiß ich nicht ganz wie ich da vorgehen muss...

Habe die Bilder zwar nun in die gewünschte Position gebracht...
Doch es wird immer das selbe Bild angezeigt:

01.
while($row = mysql_fetch_object($ergebnis)) 
02.
03.
   $Url = $row->Url; 
04.
   $Name = $row->Name; 
05.
 
06.
   $Photo = "<img src='/.$Url' width='200px' height='112.5px'>"; 
07.
          	         
08.
09.
 
10.
                echo '<table border="0" width="600px">'; 
11.
		echo '<tr>';         //// 
12.
		echo '<td>';         //// 
13.
		echo $Photo;         ////  <== 
14.
 		echo '</td>';        ////  <==  
15.
		echo '<td>';         ////  <==   Eine Zeile 
16.
		echo $Photo;         //// <==  
17.
 		echo '</td>';        ////  <== 
18.
		echo '<td>';         //// 
19.
		echo $Photo;         //// 
20.
 		echo '</td>';        //// 
21.
		echo '<tr>';         ////
Bitte warten ..
Mitglied: filippg
09.03.2008 um 15:20 Uhr
"Schleifen sind schön und gut, mann muss nur wissen, was alles reingehört und was nicht."

Schön wenn du die Variable $Photo neunmal zuweist. Allerdings überschreibt jede Zuweiung die vorherige. Und wenn dann alle Ausagben nach der letzten Zuweisung sind, dann wird auch nur der letzte Wert ausgegeben.

Grob skizziert sollte das ungefähr so aussehen:

echo <table>
echo <tr>
$i = 0;

while($row =...){
if($i == 3){
echo </tr><tr>
i = 0
}

$Photo = ....
echo <td>$photo</td>
$i++
}


Daneben würde ich die Anschaffung eines guten PHP-Einsteigerbuchs empfehlen und dir raten, nochmal ganz von vorne anzufangen.

Filipp
Bitte warten ..
Mitglied: Spackenbremse
29.03.2008 um 20:14 Uhr
Hallo Alex.
Versuchs mal n bisschen anderst zu machen, auch mit PHP -> HTML wechsel:
01.
<table border=0 width=600> 
02.
<? 
03.
$sql = "SELECT * FROM tabelle ODER BY ID ASC;"
04.
$result = mysql_query($sql) OR die (mysql_error()); 
05.
while($row = mysql_fetch_assoc($result)) 
06.
07.
?> 
08.
<tr> 
09.
<td><img src='<? echo $row['url']; ?>' width=200 height='112.5' /></td> 
10.
</tr> 
11.
<? } ?> 
12.
</table>
Damit erstellst du
  • Eine anständige SQL-Abfrage durch Arrays
  • Eine dynamische Tabelle, die sich der Anzahl der Bilder anpasst
  • Einen übersichtlichen Quellcode

mfg
Spackenbremse
Bitte warten ..
Mitglied: 46356
30.03.2008 um 23:22 Uhr
Hallo Spackenbremse!

Habs inzwischen so ähnlich gemacht wie du, hab aber vergessen den Beitrag
als gelöst zu markieren...

... trotzdem danke!

Lg. Alex
Bitte warten ..
Ähnliche Inhalte
PHP
PHP PDO Problem (1)

Frage von Tiggr1994 zum Thema PHP ...

Ubuntu
Cron spamt root mit mails zu (php sessionclean) (4)

Frage von tommy1735 zum Thema Ubuntu ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Email in Exchange an 2ten Empfänger senden (18)

Frage von MultiStorm zum Thema Exchange Server ...

Weiterbildung
Gehaltsvorstellungen (14)

Frage von SYS64738 zum Thema Weiterbildung ...

Windows Server
gelöst Microsoft-Lizenz CALs und passendes Server-Betriebssystem (13)

Frage von planetIT2016 zum Thema Windows Server ...

Verschlüsselung & Zertifikate
gelöst Festplattenverschlüsselung im Ausland (13)

Frage von Nicolaas zum Thema Verschlüsselung & Zertifikate ...