maddy: Verständnisfrage zu Java und php

hallo zusammen,

ich habe folgendes Problem. in einer php datei erzeuge ich eine Liste die im html-code hinterher so aussieht:

  
<ul class="gallery">  
<li><img src="architektur/projekte/projekt 1/0001.jpg" alt="Image"></li>  
  
<li><img src="architektur/projekte/projekt 1/0002.jpg" alt="Image"></li>  
<li><img src="architektur/projekte/projekt 1/0003.jpg" alt="Image"></li>  
<li><img src="architektur/projekte/projekt 1/0004.jpg" alt="Image"></li>  
<li><img src="architektur/projekte/projekt 1/0005.jpg" alt="Image"></li>  
<li><img src="architektur/projekte/projekt 1/0006.jpg" alt="Image"></li>  
<li><img src="architektur/projekte/projekt 1/0007.jpg" alt="Image"></li>  
<li><img src="architektur/projekte/projekt 1/0008.jpg" alt="Image"></li>  
</ul>

um aus dieser liste eine Bilderslideshow zu machen, hab ich ein javascript eingebunden. das habe ich so angestellt:

  
<?  
echo "<link href=\"css/galleria.css\" rel=\"stylesheet\" type=\"text/css\" media=\"screen\"> ";  
echo "<script type=\"text/javascript\" src=\"java/jquery.js\"></script>";  
echo "<script type=\"text/javascript\" src=\"java/jquery.galleria.js\"></script> ";  
echo "<script type=\"text/javascript\"> jQuery(function($) { $('ul.gallery').galleria(); }); </script>";  
?>

Jetzt ist es so, dass php zwar die liste erstellt wie ich sie für mien Java script bräuchte, mein javascript die Liste aber nicht umwandelt.
Wenn ich aber die Liste ohne php von hand schreibe und sie nicht erst erzeugen lasse, funktioniert es einwandfrei.

kann mir jemand erklären warum das so ist?

Gruß Maddy

  1. <?
    echo "<link href="css/galleria.css" rel="stylesheet" type="text/css" media="screen"> ";
    echo "<script type="text/javascript" src="java/jquery.js"></script>";
    echo "<script type="text/javascript" src="java/jquery.galleria.js"></script> ";
    echo "<script type="text/javascript"> jQuery(function($) { $('ul.gallery').galleria(); }); </script>";
    ?>

      
    PHP ist ein HTML-Präprozessor. Das heißt, man schreibt PHP-Code zwischen HTML-Code, um HTML-Code dynamisch zu generieren. Es besteht kein Grund und hat keinen Vorteil, statischen HTML-Code derartig in PHP-Strings unterzubringen und mit echo auszugeben. Du kannst diesen Code auch außerhalb von <?php ... ?> schreiben, das PHP-Script wird dasselbe HTML-Dokument generieren.  
      
    
    > kann mir jemand erklären warum das so ist?  
      
    Du kannst es dir vermutlich selbst erklären, indem du z.B. den vom PHP-Script generierten Code ansiehst (»Quelltext anzeigen« im Browser wählen) und nach Fehlern bzw. Unterschieden suchst.  
    Außerdem solltest du die JavaScript-Konsole der Browser nach Fehlermeldungen prüfen.  
      
    Mathias
    
    -- 
    [JavaScript-Erweiterung für das SELFHTML-Forum](http://forum.de.selfhtml.org/js/doku/)
    
  2. Hi,

    <li><img src="architektur/projekte/projekt 1/0001.jpg" alt="Image"></li>

    URLs dürfen keine Leerzeichen enthalten. Verwende also keine Leerzeichen in File-/Ordnernamen. Wenn sie doch unbedingt benötigt werden, codiere sie für die URL.

    <?

    Vermeide short open tags.

    echo "<link href="css/galleria.css" rel="stylesheet" type="text/css" media="screen"> ";
    echo "<script type="text/javascript" src="java/jquery.js"></script>";
    echo "<script type="text/javascript" src="java/jquery.galleria.js"></script> ";
    echo "<script type="text/javascript"> jQuery(function($) { $('ul.gallery').galleria(); }); </script>";

    Daß es unsinnig ist, konstanten HTML-Code per echo auszugeben, hat Matthias ja schon erwähnt.

    Jetzt ist es so, dass php zwar die liste erstellt wie ich sie für mien Java script bräuchte, mein javascript die Liste aber nicht umwandelt.

    Aha. Keiner außer Dir weiß, was da scriptmäßig bei Dir benutzt wird. Und keiner außer Dir kann daher in der Fehlerkonsole des Browsers nachgucken, was schiefgeht.

    Wenn ich aber die Liste ohne php von hand schreibe und sie nicht erst erzeugen lasse, funktioniert es einwandfrei.

    Dann gibt es entscheidende Unterschiede zwischen handgeschriebener und erzeugter Liste. Ermittle und beseitige diese.

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. vielen Dank für die hinweise und die Tips habs shcon umgesetzt.
      Der Fehler hat sich auch gefunden.
      Die Zugriffsberechtigungen für die ordner waren völlig durcheinander, jetzt funktionierts. :-)

      gruß und danke,
      maddy