mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 18.04.2024 13:43 Benutzername: Passwort: Auto-Login

Thema: Bilder direkt per HttpRequest einladen? vom 18.03.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Bilder direkt per HttpRequest einladen?
Autor Nachricht
oli.s.
Threadersteller

Dabei seit: 08.01.2007
Ort: Lehre
Alter: 36
Geschlecht: Männlich
Verfasst Di 18.03.2008 18:55
Titel

Bilder direkt per HttpRequest einladen?

Antworten mit Zitat Zum Seitenanfang

Hallo alle zusammen!
da mein gesuche nichts ergeben hat versuche ich hier mal mein Glück.
Also:
Ich bin dabei mir eine Bildergalery zu programmieren. Die Bilder werden aus einem Ordner mit PHP in ein Array geschrieben.
Und nun soll jedes Bild per HttpRequest eingeladen werden, damit nicht die ganze Seite neu geladen werden muss und sobald ein Bild geladen ist, es angeschaut werden kann. Ich habe schon stark die Vermutung das es nicht so funktioniert wie ich mir das denke.

Nun liegt mein Wissensschwerpunkt aber auf PHP und nicht Ajax. Ich würde jetzt gern wissen ob es
1. Überhaupt möglich ist, per Http das Bild direkt laden zu lassen also: zb. open('GET','bild.jpg','true');
2. Wenn ja, wie es einbinde? Einfach um responseText die <img> Elemente?
3. Wie sähe eine Möglichkeit aus die meine Absichten auch erfüllt, falls meine nicht funktioniert?

Hier mein Code:
Code:
<?php

session_start();

require_once("mysql_dates.php");

  //Ausgewählte Kategorie abfragen
  if(isset($_SESSION['gal_kat'])) {
      echo "<span>Bitte wählen Sie erst eine Kategorie aus</span>";
        //include des Menüscripts
        #########################
  } else {
    $kategorie = $_SESSION['gal_kat'];
  }
 
  //Testweise Variablen setzen
$kategorie = "test1";
$page = 1;
 
  //Verzeichnis zu den Bildern der Kategorie
  $dir = "fotos/".$kategorie."/";
  $dir_thumb = "fotos/".$kategorie."/thumbnails/";
 
  ##############################################
  //Array aller Bilddateien des Kategorieordners
  ##############################################
  function getFileNames($dir) {
    //Besteht das Verzeichnis überhaupt?
    if(is_dir($dir)) {
        $handle = opendir($dir);
       
    //Startpunkt für Schleife
    $i = 1;   
    }
   
    while(false !== ($arrayFiles = readdir($dir))) {
      if($arrayFiles !== "." || $arrayFiles !== "..") {
        if(stristr($arrayFiles, "jpg") || stristr($arrayFiles, "jpeg") || stristr($arrayFiles, "gif") || stristr($arrayFiles, "png")) {
          $pic[$i] = $arrayFiles;
            $i++;
          }
       }
    }
      closedir($handle);
      sort($pic);
     
      return $pic;
  }
 
  while($pic) { echo "picture: ".$pic; }
  ##############################################
  ##############################################
 
  //Ausgabe des Layouts und der Thumbnails
 
 
  //Anzahl der Bilder pro Seite festlegen (PicsPerPage)
    $ppp = 30;
  //Anzahl der Bilder pro Zeile festlegen (PicsPerRow)
    $ppr = 5;
   
  //Bildernamen aus Array pic lesen in Rahmen der aktuellen Seite
  $page = $_SESSION['page'];
 
  if(!isset($page)) { $page = 1; }
 
  //Errechne Start und Endbild
  $start = ($page*$ppp)-$ppp;
    if($page !== 1) { $start-1; }
  $end = $page*$ppp;
 
    for($i=$start;$i=$end;$i++) {
      echo"<div class=\"picdiv\">";
      //Reihen erstellen
      //Diese for-Schleife funktioniert so nicht
        for($ii=1;$ii=$ppr;$ii++){
        echo"<div class=\"picrow\">";
             //Bilder per Ajax laden
             echo"
             <script type=\"text/javascript\" language=\"JavaScript\">
             xmlRequest = null;
             if(window.XMLHttpRequest) {
              xmlRequest = XMLHttpRequest();
              } else if(window.ActiveXObject) {
                try{
                  xmlRequest = ActiveXObject('Msxml2.XMLHTTP');
                } catch(e1)
                {
                try {
                  xmlRequest = ActiveXObject('Microsoft.XMLHTTP');
                } catch(e2)
                {}
                }
                }
               
                    function schreibeText() {
                      if(xmlRequest.readyState == 4 && xmlRequest.status == 200) {
                        document.writeIn('xmlRequest.responseText');
                      }
                    }
               
                 if(xmlRequest !== null) {
                    xmlRequest.open('GET','$dir_thumb.$pic[$i]',true);
                    xmlRequest.onreadystatechange = schreibeText();
                    xmlRequest.send(null);
                   
                 }
               
              }
             </script>
             ";
        echo"</div>";
        }
      echo"</div>";
    }
 
 
?>

Danke schonmal!
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
m
Moderator

Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Di 18.03.2008 22:38
Titel

Antworten mit Zitat Zum Seitenanfang

Du kannst ein Bild verfügbar machen und überprüfen ob es verfügbar ist:

Code:
      image = new Image();
      image.src = 'bild.jpg';
      image.onload = weiter;


Und dieses Javascript in PHP ausgeben Mischmasch ist echt nichts.


Zuletzt bearbeitet von m am Di 18.03.2008 22:39, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
 
Ähnliche Themen [Flash] Bräuchte Hilfe bei AS einladen
Text aus txt Datei einladen - Probleme mit Mac
[HILFE: FLASH MX] einladen von externen Dateien
extrne swf in einen mc über button einladen?
Mit Pitstop geändertes PDF kann ich in Quark nicht einladen
JavaProblem Eigenen Button mit Facebooks "Freunde einladen"
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.