PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   Projekthilfe (https://www.php-resource.de/forum/projekthilfe/)
-   -   Fotoshow (https://www.php-resource.de/forum/projekthilfe/98208-fotoshow.html)

bead 03-12-2009 10:05

Fotoshow
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo, (Ich hoffe ich bin im richtigen Forum.)

ich bräuchte mal einen Tipp oder auch Hilfe bei der Realisierung von einer Fotoshow.
So wie hier soll es aussehen und funktionieren. (auf Häuser/auf 1. Bild klicken - neue Seite geht auf/wieder auf Bild klicken - so siehts aus).

Ich habe im Quelltext gesehen, dass es ein Javascript ist.
Nun meine Frage: wie kann ich Javascript mit PHP verbinden?

PHP Script im Anhang (war zu lang)
Kann mir jemand weiter helfen? Das wäre echt super.

streuner 03-12-2009 10:17

Hi!

Wofür brauchst Du da JavaScript? Kannste doch einfach ein Bild verlinken und Parameter (z.B.) übergeben und dann wird das entsprechende Bild/Formular/Tabelle etc. dargestellt!?! JavaScript mit PHP verbinden, findest Du hier zwei Beispiele:

Javascript und PHP: Ungleiche Gesellen | Javascript, PHP | Dr. Web Magazin
PHP / PHP und JavaScript verbinden - Homepage-Total.de

mfg streuner

P.S. Zoom-Funktion: http://www.homepage-total.de/javascr...animation1.php
P.P.S. Einfache Bildergalerie: http://www.homepage-total.de/php/php-js-diashow_3.php (wenn anspruchsvoller willst, solltest Du dir mal mootols anschauen!)
P.P.P.S Beachte, dass manche User JavaScript ausstellen!

bead 03-12-2009 11:20

Hey, danke Streuner, dass du so schnell geantwortet hast.

Ich kenne mich leider in PHP nicht gut aus. Alles was ich bis jetzt gemacht habe war mühevolle Kleinstarbeit für mich.
Du scheinst recht viel Ahnung von der Materie zu haben und ich stimme dir zu mein Vorhaben lieber ohne Javascript zu realisieren.
Die Links in deiner Antwort (P.S. und P.P.S.) kommen für mich eher nicht in Frage.

Wenn ich eine neue Seite anlege mit einer Tabelle, die die Bilder aus der DB ausliest wie bekomme ich es dann hin, dass das geklickte Bild darunter groß angezeigt wird?
Für die Bilder die momentan in der Bildergalerie ganz unten in meinem Script angezeigt werden gibt es eine eigene DB-Struktur. Nun gibt es ja nicht für alle Objekte gleich viele Bilder. Mal gibts nur eins mal sechs oder auch mehr. Wie kann ich bewerkstelligen, dass dann keine leeren Felder angezeigt werden? (Verstehst du was ich meine?)

Falls du ein kleines und feines Script zur Verfügung stellen möchtest würde ich mich sehr freuen und wäre dir unendlich dankbar ;o)

streuner 03-12-2009 11:35

Zitat:

Zitat von bead (Beitrag 630463)
Hey, danke Streuner, dass du so schnell geantwortet hast.

kein Probem.

Zitat:

Zitat von bead (Beitrag 630463)
Ich kenne mich leider in PHP nicht gut aus. Alles was ich bis jetzt gemacht habe war mühevolle Kleinstarbeit für mich.

Jeder fängt mal klein an und ich empfehle Dir z.B. das hier mal zu lesen:

Peter Kropff - PHP - Einleitung
PHP - SELFPHP: Version 5.2.7 Befehlsreferenz - Tutorial – Kochbuch – Forum zum Thema PHP (Beispiele, Erklärungen, Tipps etc.)
PHP-Ebooks - php.de (Ebboks PHP)

Zitat:

Zitat von bead (Beitrag 630463)
Du scheinst recht viel Ahnung von der Materie zu haben und ich stimme dir zu mein Vorhaben lieber ohne Javascript zu realisieren.

Gegen die Cracks hier bin ich auch nur ein kleines Licht:rolleyes:! Du kannst deine Projekte mit JavaScript realisieren, weil (behaupte ich mal) die meisten User JavaScript aktiviert haben. Dennoch solltest du den Leuten, die das deaktiviert haben, natürlich auch deine Informationen (etc.) vernünftig bereitstellen!


Zitat:

Zitat von bead (Beitrag 630463)
Wenn ich eine neue Seite anlege mit einer Tabelle, die die Bilder aus der DB ausliest wie bekomme ich es dann hin, dass das geklickte Bild darunter groß angezeigt wird?

Indem Du das Beispiel anschaust, dass ich Dir geschickt habe (über google findest du eine ganze Menge zu dem Thema), oder mit PHP und thumbnails arbeiten. Hast Du schon eine Datenbank Abfrage? Welche PHP Version? MySQL?

Zitat:

Zitat von bead (Beitrag 630463)
Für die Bilder die momentan in der Bildergalerie ganz unten in meinem Script angezeigt werden gibt es eine eigene DB-Struktur.

Was heißt eigene Struktur? Wie sieht die aus?

Zitat:

Zitat von bead (Beitrag 630463)
Nun gibt es ja nicht für alle Objekte gleich viele Bilder. Mal gibts nur eins mal sechs oder auch mehr. Wie kann ich bewerkstelligen, dass dann keine leeren Felder angezeigt werden? (Verstehst du was ich meine?)

Bin mir nicht sicher, klingt aber nach mysql_num_rows (PHP: mysql_num_rows - Manual).

Mfg streuner

bead 08-12-2009 08:14

Hallo,
sorry, dass ich mich erst jetzt wieder melde. Ich hab versucht diese Slideshow hinzukriegen aber ich hatte keinen Erfolg. Ich kriegs einfach nicht hin, dass die Felder aus der DB ausgelesen werden.

@ streuner:
Ja, ich arbeite mit PHP5 und MySQL (d.h. ich versuche es).

Die Struktur der Bildergalerie besteht aus 4 Feldern die da wären:
b_id (auto_increment)
id
b_gross
b_klein


In der angehängten Datei vom letzten Mal gibt es ein grosses Foto. Dieses liegt in einer anderen Struktur (Überbegriff mit allen relevanten Inhalten der Seite). Dieses Foto soll die automatische Slideshow enthalten. Hierzu müssen ja dann die Bilder aus der anderen Struktur (Bildergalerie) ausgelesen werden (wenn das möglich ist).
Und wenn man selbst blättern will sollen kleine Bilder (Anzahl muss ausgelesen werden) angezeigt werden, die bei Klick gross angezeigt werden.

Hat nicht jemand noch einen Vorschlag oder eine Lösung für mich??? PHP ist einfach nicht mein Ding glaube ich.

AmicaNoctis 08-12-2009 08:22

Hallo,

Zitat:

Zitat von bead (Beitrag 630792)
Ich kriegs einfach nicht hin, dass die Felder aus der DB ausgelesen werden.

kannst du das bitte konkretisieren? Wie ist der momentane Code dafür? Was soll passieren? Was passiert stattdessen? Welche Fehlermeldungen erhältst du?

Gruß,

Amica

bead 08-12-2009 08:32

Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Amica,
anbei das Script welches ich versuche umzusetzen.

Trotz Angabe der DB wird kein Bild angezeigt. Keine Fehlermeldung.

Der Code:
Im body:
HTML-Code:

<table width="98%"  border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" valign="top"><div>
<div> <a href=''>back</a>&nbsp;|&nbsp;<a href=''>next</a>
</div>   
<div><?php echo $row_bildergalerie['b_gross']; ?></div>
</div></td>
</tr>
</table>

Im head:
PHP-Code:

<?php 
$ID 
$_GET['ID'];
include(
"../Connections/xy.php");
$sql "SELECT b_klein, b_gross, id FROM bildergalerie WHERE id = '".$ID."'";
mysql_select_db($database_xy$xy);
$bildergalerie mysql_query($sql$xy) or die(mysql_error());
$row_bildergalerie mysql_fetch_assoc($bildergalerie);
?>


AmicaNoctis 08-12-2009 08:35

Ich nehme mal an, dass der Pfad dort angezeigt wird, wo du das Bild haben willst?

Wie bindest du denn normalerweise Bilder ein? Mit dem img-Element. Da ist aber keins zu sehen, also kann auch kein Bild angezeigt werden ;)

Wenn du den Pfad angezeigt bekommst, nimm den doch einfach mal als src-Attribut für img.

bead 08-12-2009 08:55

Also,
ich hab das mal mit dem img-Attribut gemacht aber es wird kein Bild angezeigt.
(<img src="<?php echo $row_eigentum['bild_gr']; ?> ">)

Ich schreib dir jetzt mal wie ich das denke:

wenn ich die erste angehängte Datei einfach dupliziere und dann als umbenannte Datei wieder speichere,
dann sind ja die Befehle für die DB-Auslese vorhanden (richtig?)
Nun sollen über das grosse Bild
(in diesen td:
HTML-Code:

<td height="30" align="left" valign="top" class="button-video">
<?php if($row_eigentum['video'] >''){ ?>
<img src="Bilder/videobutton.gif" width="104" height="21" class="button-video"
onclick="MM_openBrWindow('eigentum_video.php?objektnr=
<?php echo $row_eigentum['objektnr'];?>','','width=500,height=380')" />

<span class="fliesstext-fett">
<?php } else {echo "&nbsp;";} ?>
</span></td>

zwei weitere Spalten eingefügt werden. In der einen steht (ein Link?!) "Slideshow"
und in der nächsten steht "Bildergalerie".
Wenn also Sildeshow angeklickt wird soll diese in dem Feld mit dem grossen Bild beginnen.
Wenn man auf Bildergalerie klickt, geht eine neue Seite auf in der man ein grosses und alle
für dieses Objekt angelegten Bilder als Thumbs angezeigt werden. Klickt man auf ein kleines Bild,
so wird dieses als grosses Bild gezeigt.
Soweit ist mir das ja klar. Aber ich schaffe es nicht, das Javascript so einzufügen, dass das so
klappt wie ich mir das denke.

AmicaNoctis 08-12-2009 09:03

Zitat:

Zitat von bead (Beitrag 630797)
Also,
ich hab das mal mit dem img-Attribut gemacht aber es wird kein Bild angezeigt.
(<img src="<?php echo $row_eigentum['bild_gr']; ?> ">)

Hast du auch mal nachgesehen, was dann in src drinsteht und ob das überhaupt stimmt? Evtl. musst du im Script noch den Pfad anpassen. Du kannst ja auch parallel zum src-Attribut das title-Attribut mit dem selben Wert füllen, dann siehst du den Pfad gleich, wenn du über das Bild hoverst.

Zitat:

Zitat von bead (Beitrag 630797)
Ich schreib dir jetzt mal wie ich das denke:

Das hab ich aus Prinzip nicht gelesen, weil ich dafür horizontal scrollen müsste.

bead 08-12-2009 09:06

Sorry, wenn ich dir zuviel Arbeit mit scrollen zugemutet habe.
Jetzt versteh ich gar nix mehr.

AmicaNoctis 08-12-2009 09:13

Was verstehst du denn nicht?

Du sollst dir mal $row_eigentum['bild_gr'] ausgeben lassen, damit du nachsehen kannst, ob der Pfad überhaupt stimmt. Ob du dir das jetzt im erzeugten HTML-Quelltext ansiehst, oder im Script als title-Attribut setzt oder einfach so in die Seite schreibst, ist eigentlich egal, Hauptsache du guckst dir halt mal an, was drin steht.

Du kannst den Inhalt von $row_eigentum['bild_gr'] gerne auch hier posten, außerdem am besten auch den (funktionierenden) Pfad zu dem Bild, um vergleichen zu können, was da schief läuft.

Gegen das horizontale Scrollen könntest du mit dem Ändern-Button mal was unternehmen. Von der Entschuldigung allein liest es sich auch nicht besser. ;)

Edit: Danke!

AmicaNoctis 08-12-2009 09:23

Zitat:

Zitat von bead (Beitrag 630797)
wenn ich die erste angehängte Datei einfach dupliziere und dann als umbenannte Datei wieder speichere,
dann sind ja die Befehle für die DB-Auslese vorhanden (richtig?)

Richtig.
Zitat:

Zitat von bead (Beitrag 630797)
Nun sollen über das grosse Bild [...] zwei weitere Spalten eingefügt werden. In der einen steht (ein Link?!) "Slideshow"
und in der nächsten steht "Bildergalerie".
[...]
Soweit ist mir das ja klar. Aber ich schaffe es nicht, das Javascript so einzufügen, dass das so
klappt wie ich mir das denke.

Prinzip verstanden, nur warum willst du das unbedingt mit JavaScript machen, wenn du damit Probleme hast? Diese Links kannst du doch genauso gut mit Get-Parametern ausstatten, diese im PHP-Script auswerten und die entsprechende Seite (entweder mit Slideshow oder mit dem großen Bild) ausgeben.

bead 08-12-2009 09:45

Bitte hab Nachsicht mit mir. Ich kann PHP nicht aber ich tue mein Bestes.

Der Pfad zum Bild steht ja in der DB also brauche ich in der Datei doch nur schreiben
PHP-Code:

<?php echo $row_eigentum['objektnr'];?>

wo in welchem Feld der DB das Bild ausgelesen werden soll. Oder?

In der (veröffentlichten) Datei wo die Slideshow rein soll steht im Quelltext:
HTML-Code:

<img src="Bilder/Dateiordner/Objektordner/xy.jpg">
In der neuen Datei steht das img-Attribut nicht drin. D.h. also in meiner DB-Abfrage stimmt was nicht. Aber es ist doch die gleiche Datei nur umbenannt und im Inhalt abgeändert.

Das ist der Code für die DB:
PHP-Code:

<?php require_once('../Connections/xy.php'); ?>
<?php
mysql_select_db
($database_xy$xy);
$query_eigentum "SELECT * FROM eigentum WHERE eigentum.ID = '".$_GET['ID']."' LIMIT 0,1";

$eigentum mysql_query($query_eigentum$xy) or die(mysql_error());
$row_eigentum mysql_fetch_assoc($eigentum);


mysql_select_db($database_xy$xy);
$query_bildergalerie "SELECT * FROM bildergalerie WHERE ID = '".$row_immo['ID']."'";
$bildergalerie mysql_query($query_bildergalerie$xy) or die(mysql_error());
$row_bildergalerie mysql_fetch_assoc($bildergalerie);
$totalRows_bildergalerie mysql_num_rows($bildergalerie);
?>

Was stimmt denn da nicht?????

AmicaNoctis 08-12-2009 09:50

Zitat:

Zitat von bead (Beitrag 630805)
Was stimmt denn da nicht?????

Vermutlich das error_reporting, weil es dir nicht sagt, dass $_GET["id"] undefiniert ist. (Reine Mutmaßung meinerseits!) Ohne diesen Get-Parameter ist deine Where-Klausel immer falsch und daher kommt natürlich kein Datensatz.

Bitte nicht falsch verstehen, aber mutest du dir da nicht etwas viel auf einmal zu? Da fehlen offenbar noch ein paar Grundkenntnisse. :(


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:51 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG