getimagesize mit ajax geht net!

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • getimagesize mit ajax geht net!

    ich habe in der variable $Foto den link des bildes, der auch per image tag korrekt verarbeitet wird (Bild wird angezeigt)!

    ich keine komplette pfadangabe mit ROOT-Verzeichnis, da das die bilder dann bei mir net angezeigt werden.

    also nur /Bilder/test.png

    in meinen direkten PHP dateien klappt alles, nur wenn ich mein mouseoverfenster bzw. div aufklappe, dort die php dateien per ajax (GET) rein lade bzw. anzeigen lasse, meckert der "failed open stream..), nur darunter wird das bild ja korrekt angezeigt???!!!

    ich will nämlich prüfen ob das bild das quer- oder hochformat besitzt, da ich einen entsprechenden bilderrahmen mit anzeigen lasse!

    jemand eine idee wo das problem liegt?

    Code:
    $Info=getimagesize($Foto);
    
    $hoch = imagesx($Info); 
    $breit= imagesy($Info);
    wie erwähnt klappt es direkt als php datei, wenn ich aber per ajax eine php datei nachlade, als infofenster, klappts net. da meckert er schon in der 1. zeile, also direkt bei imagesize!

  • #2
    Du machst aber nicht einfach getimagesize('/Bilder/foo.jpg') oder? Das muss schön $_SERVER['DOCUMENT_ROOT'] vorn dran.

    Kommentar


    • #3
      na das klappt ja noch weniger, da das bild dann net mal angezeigt wird (image src...) und der fehler bei dem getimage befehl bleibt trotzdem bestehen. hab schon die aktuelle xampp version.

      gibts einen alternativen befehl bzw. möglichkeit die bilder zu prüfen?

      Kommentar


      • #4
        Das hat damit doch gar nichts zu tun. Du kannst im HTML-Code trotzdem /Bilder/test.png nehmen, aber PHP Skript musst du vor diesen Pfad noch den des document root setzen, damit auch PHP das Bild findet:
        PHP-Code:
        $Info=getimagesize($_SERVER['DOCUMENT_ROOT'] . $Foto); 
        Gruß,

        Amica
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar


        • #5
          Es gibt ja 2 Arten die du nicht verwechseln solltest.

          Einmal den Pfad des Bildes in der URL und einmal den Pfad vom Bild auf dem Speicherplatz.

          Die Funktion getimagesize() möchte den Pfad vom Speicherplatz, deswegen geht /Bilder/test.png nicht.
          Gut geraten ist halb gewußt.

          Kommentar


          • #6
            ja ich habe jetzt folgendes getestet:

            Code:
            $Root=$_SERVER['DOCUMENT_ROOT'].
            
            //geht net
            $Info=getimagesize($Root.$Foto);
            
            //geht net
            $Info=getimagesize('C:\Programme\xampp\htdocs\Projekt\'.$Foto);
            
            und das ging jetzt:
            $Info=getimagesize($Root.'\Projekt\'.$Foto);
            1.da das script bzw. php den ordnernamen des internen systems nimmt "progam files" obwohl für mich als nutzer der ordnername "programme" sichbar ist.

            2. gibt er mir den pfad nur bis zu htdocs an, aber nicht den pfad bis zur php datei des scriptes, indem ich den befehl habe.

            daher noch den ordnernamen "Projekt" noch mit einbauen.

            also ich mußte den pfad aus 3 bestandteilen zusammen kleistern.

            also danke für eure hilfe, endlich klappts.

            ist nur komisch das es auf alte weiße (ohne root) bei der einen php datei funktioniert (direkt über index.php eingebunden), da gibt er mir die höhe etc. an und per ajax nachgeladenes php script, klappt nur mit der obigen bastelei. das war das problem, drum bin ich net auf die lösung gekommen.

            Kommentar


            • #7
              Zitat von Gamer20 Beitrag anzeigen
              ist nur komisch das es auf alte weiße (ohne root) bei der einen php datei funktioniert (direkt über index.php eingebunden), da gibt er mir die höhe etc. an und per ajax nachgeladenes php script, klappt nur mit der obigen bastelei. das war das problem, drum bin ich net auf die lösung gekommen.
              Also bei sowas ist mein erster Anlauf die relativen Pfadangaben überprüfen.

              Wenn deine ajax php Datei in einem anderem Ordner liegt als die index.php dann liegt es an den raltiven Pfadangaben die nicht stimmen. Durch das voransetzen des Document Roots erhälst du immer eine absolute Pfadangabe, welche dann natürlich stimmt.

              Kommentar

              Lädt...
              X