• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Es regnet, ist neblig und kalt, alle sind krank und der Chef wird zunehmend cholerisch. Das Thema des Monats ist also folgerichtig --> Das Grau(en)
    Wir sind gespannt, war Euch dazu einfällt! Zum Wettbewerb --> Klick

Kurze PHP Einbindung

wapplegraph

Normande
Registriert
12.04.06
Beiträge
571
Tach

Ich bin an einer Website fuer meine "Tante" zu programmieren, mit HTML. Bin hier in Spanien und habe mir gedacht, dass ich alles mit HTML mache, da ich dies schon so einigermassen kann. Habe mir auch vorgenommen, die Sprachen je mit einer neuen Site zu machen, da ich noch nicht Fit in PHP bin. Die erste Site ist heute mit Tabellen entstanden.

Doch nun waere ein PHP Befehl von grossem Nutzen. :cool:

Sie moechte, auf einer Seite, rechts, habe gedacht in einer kleinen Spalte, kleine Bilder und wenn man drauf klickt, dass links (in der Mitte) gross das Bild erscheint.
Ist dies mit einem noch einfachen PHP Befehl moeglich? Koennte mir jemand helfen?


Danke wapplegraph
 

.holger

Borowitzky
Registriert
13.09.04
Beiträge
8.971
Klar geht das. Du öffnest mit dem Klick die Seite, übergibst einen Parameter, der das Bild bestimmt, den setzt Du dann für das Bild ein. also so was:
<?

// das große Bild:

echo "<img src=\"". $_REQUEST['parameter'] ."\">";


//die anklickbaren Thumbnails:

echo "<a href=\"".$_SERVER['PHP_SELF']."&parameter=ordner/bilddatei.png\" /"><img src=\"ordner/bilddatei_tn.png\"></a>";
echo "<a href=\"".$_SERVER['PHP_SELF']."&parameter=ordner/bilddatei2.png\" /"><img src=\"ordner/bilddatei2_tn.png\"></a>";
?>

aber ich denke einfacher und schneller geht es für Dich mit nem kleinen Javascript

Ach und Seiten mit Tabellen zu gestalten ist ein ganz ganz böses no-no!
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
<?

// das große Bild:

echo "<img src=\"". $_REQUEST['parameter'] ."\">";

...
:eek:
Bitte bedenken: Wenn Du es genauso umsetzt, ist die Gefahr von Cross Site Scripting recht groß. Es ist zwar auf den ersten Blick unwahrscheinlich, aber Benutzereingaben und Parametern, die über die Adresse übermittelt werden, darf nie vertraut werden, sonst installiert Dir der nächste durchgeknallte 15jährige einen IRC-Relay über die URL auf Deinem Server.

Besserer Vorschlag:

Code:
<?

   $grossebilder = array (
      'grossesbild_1.jpg',
      'grossesbild_2.jpg',
      'grossesbild_3.jpg'
   );

   $fraglichesbild = sprintf ("grossesbild_%u.jpg"
                           , $_GET['parameter']);

   // gibt es dort eine Datei, die ich oeffnen darf?
   if (is_readable ($fraglichesbild)) {

      // ist es ein regulaeres Bild?
      // Wenn ja, gib her, was Du weisst:
      if ($ausmasse = @getimagesize ($fraglichesbild)) {

         // gib das Bild aus
         printf ("<img src=\"%s\" height=\"%u\" width=\"%u\" style=\"border: 0\" />\n"
            , $fraglichesbild
            , $ausmasse[0]
            , $ausmasse[1]
         );
      } else {
         echo "<!-- Des isch ko Bild nicht, gsuffa! -->\n";
      }
   } else {
      echo "<!-- Koa Bild gfundn -->\n";
   }
?>
 
  • Like
Reaktionen: Nathea

wapplegraph

Normande
Registriert
12.04.06
Beiträge
571
Ja danke fuer die Antworten die muss ich jetzt einmal bearbeiten.

Nun zu dem Design mit Tabellen, dies wollte ich eben wissen: Was ist das Modernste?

wapplegraph
 

skepsis

Westfälische Tiefblüte
Registriert
07.02.06
Beiträge
1.050
Zwar auch mit der einen oder anderen Schwäche, jedoch tables weit überlegen: CSS!

Wenn du deine Seite einmal mit CSS zusammengebastelt hast, willst du nichts anderes mehr haben!
 

stoebe

Uelzener Rambour
Registriert
23.12.05
Beiträge
371
Ja danke fuer die Antworten die muss ich jetzt einmal bearbeiten.

Nun zu dem Design mit Tabellen, dies wollte ich eben wissen: Was ist das Modernste?

wapplegraph
Die Umsetzung mit CSS. Tabellen in HTML sind Schwachsinn.
Literatur zum Start mit CSS findest du beispielsweise hier.


Grüße,

stoebe
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Ja danke fuer die Antworten die muss ich jetzt einmal bearbeiten.

Nun zu dem Design mit Tabellen, dies wollte ich eben wissen: Was ist das Modernste?

wapplegraph

Modernität hin oder her, zu empfehlen ist der Einsatz von Tabellen nur dann, wenn Du auch Informationen tabellarisch darstellen möchtest. Für alles andere ist es für viele Anwendungsgebiete weniger geboten, Tabellen einzusetzen. Allerdings darf man das auch nicht zu dogmatisch sehen, denn viele der wichtigsten 100 WebSites dieses Planeten nutzen Tabellen auch zu Layout-Zwecken und die HTML-Designer sind auch nicht schlechtere Menschen deshalb.

Falls Dich das Thema interessiert, such einmal nach Begriffen wie "table-free html" oder "liquid html" oder "fluid html". Falls Dich das Thema nicht interessiert, nimm halt Tabellen ;)
 

wapplegraph

Normande
Registriert
12.04.06
Beiträge
571
Also die Formatierung, mache jetzt schon mit CSS, doch das HTML halt noch mit Tabellen.

Hier der Link zu dem, was ich gestern und heute gemacht habe.
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Das ist auch gut ohne Tabellen umsetzbar, erfordert aber einiges an Übung und mehr Arbeiten am Quelltext. Vor allem lernt man dann die Mängel des MSIE recht genau kennen.
 

csharp

Gast
Das kannst du locker mit CSS und ohne Tabellen machen.
 

wapplegraph

Normande
Registriert
12.04.06
Beiträge
571
Danke Hilarious

Doch nun muss ich mich wieder auf die Huerde konzentrieren.

Habe dein PHP noch nicht gecheckt, bin in diesem Skripting noch nicht vertraut.

Koenntest du bitte, wenn du Zeit hast, mir dies einmal noch so aufschreiben, dass ich es fast uebernehmen koennte? Vielleicht ist es jetzt schon so und ich merke es noch nicht, dann braeuchte ich noch groessere Hilfestellungen.

Das ist jetzt halt noch alles total neu und ich stelle vielleicht komische Fragen, doch kann es nicht aendern.

Habe jetzt eben keine Zeit, um mich mit der Materie zu beschaeftigen, da ich in Spanien bin und dort die Website in einem akzeptablen Zustand zuruecklassen sollte und dazu gehoeren die Bilder.

Zu dem Tabellen HTML, werde diese Site noch so beenden und dann, mache ich mich mit dem grossen CSS vertraut.

Danke wapplegraph
 

skepsis

Westfälische Tiefblüte
Registriert
07.02.06
Beiträge
1.050
...

Zu dem Tabellen HTML, werde diese Site noch so beenden und dann, mache ich mich mit dem grossen CSS vertraut.

Danke wapplegraph

Ist sicher die beste Variante! Mittendrin sollte man sowas nicht ändern.
Wenn du sowieso die Formatierung bereits über CSS machst, solltest du mit einem CSS basiertem Seitenlayout keine großen Probleme haben. So sollte es für dich kein "großes" CSS mehr sein ;)

Außerdem: Wenns gut läuft sparst du dir viel Quelltext und kannst auf die tausenden <tr>s und <td>s verzichten!
Dadurch wird alles viel übersichtlicher und leichter anpassbar!
Wenn ich noch an den Stress mit den tables denke: Kleinste Layoutveränderungen und du kannst fast alles neu schreiben!

CSS vs. tables ist nicht nur ne Glaubenssache! Die Fakten sprechen eindeutig für CSS. Außer natürlich man will WIRKLICH Tabellarische Inhalte präsentieren, dann bleibt 'komischerweise' natürlich die tables erste Wahl ;)

Gruß
 
Zuletzt bearbeitet:

wapplegraph

Normande
Registriert
12.04.06
Beiträge
571
Ja

Noch zum CSS als ich die Websiten, noch mir Dreamweaver "zeichnete", da habe ich allles mit Ebenen gemacht. Wollte die jetzige Website zuerst auch mit Ebenen machen, doch es wurde mir irgendwie zu umstaendlich sie immer wieder zu verschieben, und die genaue Position zu berechnen.

Da habe ich irgend einen Trick noch nicht. Eigentlich moechte ich schon alles mit divs machen. Doch nun habe ich zu Tabellen gegriffen.
Es ist komisch, wenn ich mit Dreamweaver zeichne, dann benutze ich Ebenen. Im programmieren habe ich Tabellen benutzt.

Waere froh um Tipps fuer das CSS und nun fuer mein Fotoproblem.

wapplegraph
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Danke Hilarious

Doch nun muss ich mich wieder auf die Huerde konzentrieren.

Habe dein PHP noch nicht gecheckt, bin in diesem Skripting noch nicht vertraut.

Koenntest du bitte, wenn du Zeit hast, mir dies einmal noch so aufschreiben, dass ich es fast uebernehmen koennte? Vielleicht ist es jetzt schon so und ich merke es noch nicht, dann braeuchte ich noch groessere Hilfestellungen.

Das ist jetzt halt noch alles total neu und ich stelle vielleicht komische Fragen, doch kann es nicht aendern.

Habe jetzt eben keine Zeit, um mich mit der Materie zu beschaeftigen, da ich in Spanien bin und dort die Website in einem akzeptablen Zustand zuruecklassen sollte und dazu gehoeren die Bilder.

Zu dem Tabellen HTML, werde diese Site noch so beenden und dann, mache ich mich mit dem grossen CSS vertraut.

Danke wapplegraph

Im Prinzip ist das Skript fertig zu Benutzung. Um es zu verwenden, speicherst Du dieses Skript zunächst unter einem eigenen Namen ab, zum Beispiel »grossebilder.php«. Als nächstes bereitest Du Deine Vorschaugalerie vor, die sämtliche Bild als kleine Vorschauen präsentiert. Die Bilder, die Du verwendest sollten einer gleichförmigen Bennenungsregel folgen, zum Beispiel ,»kleinesbild_1.jpg«, »kleinesbild_2.jpg«. Die großen Bilder werden dann analog benannt: »grossesbild_1.jpg«, »grossesbild_2.jpg« und so fort.

Die kleinen Bilder ordnest Du nun auf der Seite an und verlinkst diese direkt mit dem Skript »grossebilder.php«, wobei Du bei jedem Link den zusätzlichen Parameter seiner Ordnungszahl anhängst, zum Beispiel so:
Code:
<a href="grossebilder.php?parameter=2" target="_blank"><img src="kleinesbild_1.jpg" style="border: 0" /></a>

Der Effekt: Ein neues Fenster öffnet sich und zeigt, wenn alles klappt, das große Pendant des kleinen Bildes. Die Dateinamen musst Du nur noch anpassen, eventuell um Pfadangaben erweitern, und sicherstellen, dass alle Bilder korrekt benannt sind.

Fertig.
 

wapplegraph

Normande
Registriert
12.04.06
Beiträge
571
Danke vielmals Hilarious

Dies kann ich gut gebrauchen, aber leider nicht hier, da ich herausgefunden habe, wenn dies stimmt, dass der Server nicht PHP unterstuetzt.

Hier meine Test Site

Code:
<? php
echo "Hallo Welt";
?>

Dies sollte hoffentlich richtig sein.

Nun habe ich es mit Frames geloest. Doch es sieht noch nicht schoen aus.

Der Link hier

Mein Frage, wie kann ich machen, dass das grosse Foto eingemittet angezeigt wird, und wie brine ich einen schwarzen Rahmen darum?

Das ist nun wichtig!

Danke wapplegraph
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Um das große Bild mittig darstellen zu können, sollte das Bild zunächst in Rahmen einer vollständigen HTML-Seite abgebildet werden. Zwar wäre hier PHP jetzt wirklich praktisch, aber es geht auch ohne: Entweder erzeugst Du für jedes Bild eine eigene HTML-Seite oder Du verwendest etwas komplizierteres JavaScript.

Da die jeweils eigene HTML-Seite vermutlich zunächst attraktiver klingt, sollte diese HTML-Seite, die ja nur das Bild beinhalten soll, ein Block-Tag (zum Beispiel ein DIV) enthalten, welches Du dann per CSS zentriert (horizontal wie vertikal) positionierst. Der Trick bei dieser Lösung ist, dass es auch im MSIE funktioniert ;), leider musst Du die Angaben in der Positition den Bildmaßen anpassen, sofern Deine Großansichten unterschiedliche Maße (Breite, Höhe) haben. Wenn Du jetzt alle Großansichten gleichförmig machst, hast Du jede Menge arbeit gespart.

Richtig viel Arbeit sparen kann man sich aber auch mit einer JavaScript-Bibliothek (= Sammlung fertig angerührter Skript-Desserts), die genau für Deinen Zweck ein nettes, fertiges Beispiel enthält. Diese Bibliothek kommt von Adobe (kaum zu glauben, aber das muss wohl mit der Macromedia-Übernahme zu tun haben) und heißt Spry. Eine Anwendung von Spry als Lösung für Bildergalerien gibt es auch. Mit ein wenig Erfahrung gelingt einem einen Spry-Galerie in einem Zeitraum von unter 60 Minuten.
 
  • Like
Reaktionen: wapplegraph

tilo

Gast
Da habe ich irgend einen Trick noch nicht. Eigentlich moechte ich schon alles mit divs machen. Doch nun habe ich zu Tabellen gegriffen.
wapplegraph


Bevor du mit dem Layout anfängst: Nein, du möchtst nicht alles mit divs machen!
Das war das Phänomen, als es hieß: Tabellen sind tabu, benutzt CSS!!! Man braucht nur in den Quellcode zu schauen und fand eine unübersichtliche Wolke aus divs .. da hätte man ebenso bei Tabelleb bleiben können.
Der Umstieg diente ja nicht nur dem Zweck der Übersichtlichkeit, sondern der Semantik. Also sollte man auch entsprechende Tags nutzen, die einem von Haus aus zur Verfügung gestellt wurden.
Was wovür sinnvoll ist, das muss man sich natürlich erstmal überlegen.
Als kleines Beispiel zwei Seiten von mir:
Meine Anfänge in Sachen CSS: ###gelöscht### ... dort siehst du "alles mit divs"
Etwas fortgeschrittener: ###gelöscht#### ... der Unterschied sollte bei kurzem Überfliegen des Quelltextes klar werden.

Gruß,
Tilo
 
Zuletzt bearbeitet von einem Moderator: