Facetious: PHP Funktion durch Javascript Event aufrufen

Hi!

ich hab ein Bild und beim onClick-Event soll eine PHP Funktion aufgerufen werden

nur stoße ich dabei irgendwie auf Probleme:
kurzer ausschnitt aus meinem script:

<?php
   echo "<img src="bla.jpg" alt="" onClick="<?php getFullSize('hierderpfad'); ?>";
?>

er führt den code ohne fehler aus, nur beim onClick passiert null

hoffe auf zahlreiche antworten
mfg und danke Facetious

  1. hallo,

    mit deinem onClick rufst du eine JavaScript funktion auf.

    Ist deine Funktion in JS oder PHP?

    1. hallo,

      mit deinem onClick rufst du eine JavaScript funktion auf.

      Ist deine Funktion in JS oder PHP?

      es ist einen phpfunktion, die ich aber auslösen will, wenn er draufklickt

      1. tja,

        dafür müsstest du die seite dann neu aufrufen und einen parameter mit geben z.b.

        deineseite.php?action=js

        dann musst du noch im body kopieren folgendes reintun:

        <body <? if($_REQUEST['action']=="js"){print "onLoad='deinefunction()'";}>

        da bedeutet das wenn action == "js" dann wird im body onLoad='deinefunction()'; kopiert und die funktion wird beim laden der seite ausgeführt.

        1. tja,

          dafür müsstest du die seite dann neu aufrufen und einen parameter mit geben z.b.

          deineseite.php?action=js

          dann musst du noch im body kopieren folgendes reintun:

          <body <? if($_REQUEST['action']=="js"){print "onLoad='deinefunction()'";}>

          da bedeutet das wenn action == "js" dann wird im body onLoad='deinefunction()'; kopiert und die funktion wird beim laden der seite ausgeführt.

          danke erst mal
          gibts noch eine andere möglickeit das zu lösen, denn in meinem fall wird der php funktion dynamisch ein pfad übergeben, den ich dann auch über die uri übergeben müsste, was ich aber aus sicherheitsgründen nicht will.

          also is keine möglichkeit das direkt übers onClick zu machen

          1. erklär mal genau was du mit deiner funktion überhaupt machst?

            1. erklär mal genau was du mit deiner funktion überhaupt machst?

              das ganze wird ein download script
              ich lese aufgrund der groupid die berechtigungen für verschiedene downloadordner aus
              also zb den Ordner "Dummkopf" und ein mitglied heißt Martin

              so..also werden Martin, sobald er sich richtig eingeloggt hat, 2 ordner dargestellt

              1. public ordner
              jeder hat zugriff

              2. dummkopf ordner
              alle mitglieder der gruppe dummkopf haben zugriff auf ihn

              soweit so gut
              sobald jetzt martin den ordner anclickt, soll ihm der inhalt des angeklickten ordner (in seinem fall "dummkopf") angezeigt werden, deswegen onClick

              die funktion schaut so aus

              function getDirContent($path){
                $handle = opendir($path);
                while($file = readdir($handle)){
                  if ($file != "." && $file != "..")
                    echo $file;
                }
              }

              sie ist ein bisschen gekürzt, umfasst aber das wesentlichste

              mfg Facetious

              1. hi,

                so..also werden Martin, sobald er sich richtig eingeloggt hat, 2 ordner dargestellt

                1. public ordner
                  jeder hat zugriff

                2. dummkopf ordner
                  alle mitglieder der gruppe dummkopf haben zugriff auf ihn

                sobald jetzt martin den ordner anclickt, soll ihm der inhalt des angeklickten ordner (in seinem fall "dummkopf") angezeigt werden

                der dummkopf-ordner sollte wohl eher deiner sein.

                ich hoffe doch stark, dass die anderen deinen tonfall hier auch zu "würdigen" wissen, und nicht noch weiter perlen vor die säue werfen, in dem sie jemandem mit deiner ausdrucksweise noch weitere tipps geben.

                gruß,
                wahsaga

                --
                "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
                1. in dem sie jemandem mit deiner ausdrucksweise noch weitere tipps geben.

                  gruß,
                  wahsaga

                  sorry aber wo ist das problem
                  lässt du dir salopp gesagt "am schädl scheissen" wenn du eine frage hast und dir darauf provokant geantwortet wird?
                  ich glaube, dass es eigentlich mein gutes recht ist genauso provokant zurückzuschreiben

                  mfg

                  1. hi,

                    sorry aber wo ist das problem
                    lässt du dir salopp gesagt "am schädl scheissen" wenn du eine frage hast und dir darauf provokant geantwortet wird?

                    dein beispiel war absolut typisch für jemanden, der den von Martin angesprochenen unterschied noch nicht verstanden hat.

                    wenn du das angeblich schon wusstest - warum bringst du dann unkommentiert dieses absurde beispiel?

                    ich glaube, dass es eigentlich mein gutes recht ist genauso provokant zurückzuschreiben

                    an der antwort war nichts provokantes.
                    wenn du deine fragen derart "dumm" stellst, musst du dich auch nicht wundern, wenn dich jemand für genau das hält.

                    gruß,
                    wahsaga

                    --
                    "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
                    1. es reicht
                      um dieser dummen disskussion ein ende zu geben

                      hiermit entschuldige ich mich beim user Der Martin das ich ihn beleidigt habe

                      eine gute Nacht euch allen

                      Facetious

                      1. Hallo Facetious,

                        hiermit entschuldige ich mich beim user Der Martin das ich ihn beleidigt habe

                        Danke, Entschuldigung angenommen. ;)
                        Manchmal merkt man erst sehr viel später, dass die vermeintlichen Gemeinheiten und Sticheleien in Wirklichkeit gut gemeinte Hilfestellungen oder Denkanstöße waren.
                        Ich vermute, du warst im Moment zu sehr auf dein Problem fixiert, um zu merken, dass du da mit Volldampf in eine Sackgasse galoppiert bist. Ich kann auch verstehen, dass du gereizt reagierst, wenn ich dich auf einen Denkfehler aufmerksam mache - zumindest sah es für mich aus wie ein Denkfehler oder eine Wissenslücke.

                        Nichts für ungut,

                        Martin

                        1. passt alles ok
                          wenn du wiener bist lad ich dich mal auf ein bier ein oder so :)

                          mfg Facetious

              2. Hi,

                sobald jetzt martin den ordner anclickt, soll ihm der inhalt des angeklickten ordner (in seinem fall "schlaukopf") angezeigt werden, deswegen onClick

                Um die aktuellen HTML-Seite dynamisch zu ändern, bedarf es halt einer clientseitigen Scriptsprache (i.d.R. also JavaScript -> "DHTML"). Mit JS hast Du aber keinen Zugriff auf die Ordnerstruktur des Servers. Du mußt also auf jeden Fall eine neue "PHP-Resource" anfordern - i.d.R. mit dem gewünschten HTML-Code der neuen Ordnerstruktur (also inkl. "schlaukopf") als Output.

                Bei onClick fordere also einfach in einem unsichtbaren (I)Frame dieses PHP-Script an. In der so erzeugten, nicht sichtbaren HTML-Seite ist dann eine JavaScript, das bei onLoad den gewünschten HTML-Code ausliest und direkt in den Hauptframe schreibt.

                Bei einem Non-JS-Browser wäre dann statt dieses Umwegs einfach die Hauptseite neu zu laden.

                Gruß, Cybaer

                --
                Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  2. Hallo,

    ich hab ein Bild und beim onClick-Event soll eine PHP Funktion aufgerufen werden

    Du weißt aber schon, dass PHP auf dem Server ausgeführt wird, BEVOR das Dokument überhaupt zum Client übertragen wird?
    Und dass Javascript auf dem Client ausgeführt wird, NACHDEM das Dokument dort angekommen ist?

    Anscheinend nicht. Mach dich doch nochmal mit dem Zusammenspiel von Server und Client vertraut und überdenke dein Konzept.

    So long,

    Martin

    1. Lieber Martin!

      Ich bedanke mich vielmals für deine lehrreiche, doch etwas zynische Antwort.
      Natürlich war mir bekannt das PHP vor Javascript ausgeführt wird, nur vielleicht hätte es ja eine Möglichkeit gegeben!

      Aber anstatt deinen dummen Mund zu halten um bei der Lösung des Problems zu helfen, flamst du dumm herum.

      Aber nochmals danke lieber Martin, du warst mir eine wiirklich sehr sehr große Hilfe

      mfg Facetious

      1. hi,

        Natürlich war mir bekannt das PHP vor Javascript ausgeführt wird, nur vielleicht hätte es ja eine Möglichkeit gegeben!

        schwer zu glauben.
        jemand, der das weiß, hätte deinen "beispielcode" eigentlich gar nicht erst fabrizieren sollen.

        Aber anstatt deinen dummen Mund zu halten um bei der Lösung des Problems zu helfen, flamst du dumm herum.

        Don't feed the trolls

        gruß,
        wahsaga

        --
        "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
        1. schwer zu glauben.
          jemand, der das weiß, hätte deinen "beispielcode" eigentlich gar nicht erst fabrizieren sollen.

          hem hem
          gegen dich sag ich nix, ich weiss das du was draufhast .. deswegen schweige ich und lasse diese stichelei an mir vorbeigehen ...
          ;)

          mfg Facetious