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, 4406 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 ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
PHP
PHP: URL kürzen (14)

Frage von michi-ffm zum Thema PHP ...

PHP
gelöst PHP 7 und LDAP mit Umlauten (3)

Frage von wiesi200 zum Thema PHP ...

Administrator.de Feedback
Entwicklertagebuch: PHP 7 (4)

Information von admtech zum Thema Administrator.de Feedback ...

Entwicklung
Was brauche ich um über PHP eine Oberfläche zu erstellen? (10)

Frage von SIMONJAKOB zum Thema Entwicklung ...

Heiß diskutierte Inhalte
CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (23)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Mac OS X
Mac kann nicht im LAN pingen alle anderen schon (19)

Frage von smartino zum Thema Mac OS X ...

Hyper-V
Langsames Netzwerk i210 LAN Karte (10)

Frage von Akcent zum Thema Hyper-V ...

Netzwerke
Abisolierwerkzeug (10)

Frage von SarekHL zum Thema Netzwerke ...