Frage zu MqSQL und PHP

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

  • Frage zu MqSQL und PHP

    Hallo,

    wenn ich das richtig verstehe wird hier in der Datenbank das ACL geprüft, wenn erfolgreich wird dann der Datensatz ausgeliefert... (Ich hoffe, ich liege richtig - bin da leider noch nicht so fit!)

    PHP-Code:
    $database->setQuery("SELECT c.access 
                            FROM #__ponygallery_catg as c 
                            LEFT JOIN #__ponygallery as a ON a.catid = c.cid
                            WHERE a.id= '$id'");
               $c_access=$database->loadResult();
               
               
      if (isset($my->jaclplus)) $notallow = !in_array( $c_access, explode( ",", $my->jaclplus ) );
        if ( $notallow ) {
    ?>       
               <img src="<?php echo  $mosConfig_live_site?>/index.php?option=com_ponygallery&amp;func=watermark&amp;id=<?php echo $id?>&amp;Itemid=<?php echo $Itemid?>" class="<?php echo $myborder?>" id="pg_photo_big" style="width:<?php echo $width?>px;height:<?php echo $height?>px;" width="<?php echo $width?>px" height="<?php echo $height?>px" alt="<?php echo $imgtitle?><?php if($ag_disable_rightclick_detail==1){?> onmouseover="javascript:pg_hover();" onmouseout="javascript:pg_hover();"<?php ?>>
    <?php
          
    } else {........
    Wie bekomme ich es hin, das auch wenn "Notallow" eintrifft die Infos aus der Datenbank bereitstehen und ich die (in dem Fall Bilder) dann via PHP/JS weiter bearbeiten kann???

    Würde mich sehr freuen, wenn jemand von Euch eine Idee hätte!

    LG

    Mike

    P.S. Falls das jemand braucht: Das ganze läuft unter Joomla ;-)[
    Zuletzt geändert von goth; 19.04.2008, 15:20.

  • #2
    Willkommen im Forum, aber ließ dir doch bitte erst die Regeln durch!

    Kommentar


    • #3
      guck doch einfach, was der teil hinter
      PHP-Code:
       if ( $notallow ) { 
      entgegen dem teil hinter
      PHP-Code:
      } else { 
      nicht hat. Wenn du immer den else-Teil ausführen willst, dann lösch die abfrage (samt erstem Teil) komplett, ansonsten formulierst du den Teil entsprechend um.

      Kommentar


      • #4
        Hallo,

        es soll nicht die selbe Funktion ausgeführt werden...

        Ich versuch' mal es zu beschreiben: Es wird in der Tabelle #__ponygallery_catg geprüft ob der User das Bild sehen darf. Wenn ja tritt die else-funktion in Kraft. Wenn nein die notallow...

        Bei notallow soll das Bild mit einem Wasserzeichen versehen werden. Dazu bräuchte notallow aber auch das original-bild aus der Datenbank (bzw.) den Dateinamen... Ich vermute das da der Fehler liegen könnte...

        LG

        Mike

        Kommentar


        • #5
          Wo ist denn dein Problem?

          Kommentar


          • #6
            Das Wasserzeichenbild wird nicht erzeugt / angezeigt... Sondern es wird nur ein leeres Div (im IE mit dem roten X) angezeigt... Ich vermute mal, dass die Funktion die das Wasserzeichen erstellen soll (also notallow) das Originalbild nicht bekommt....

            Kommentar


            • #7
              Also ein bisschen Debugging-Infos brauch ich schon.

              Fehlermeldung, etc?

              Kommentar


              • #8
                Hallo, das einzige was das debugging von Joomla diesbezüglich ausgibt ist:

                PHP-Code:
                13
                SELECT c
                .access 
                                        FROM jos_ponygallery_catg 
                as 
                                        LEFT JOIN jos_ponygallery 
                as a ON a.catid c.cid
                                        WHERE a
                .id'1' 

                Kommentar


                • #9
                  Und was ist damit? Funktioniert die Query oder nicht?

                  Machs uns doch nicht schwerer als es ist. DU willst doch Hilfe bekommen. Da sag uns, wo dein Problem liegt und was du von uns erwartest.

                  Kommentar


                  • #10
                    Ja, die Query scheint zu funktionieren, die User die das Bild sehen dürfen sehen es auch. Das Problem scheint mir eher hier zu liegen...

                    PHP-Code:
                      if (isset($my->jaclplus)) $notallow = !in_array$c_accessexplode","$my->jaclplus ) ); 
                    $notallow braucht ja auch die Bilddaten aus #__ponygallery um das Wasserzeichen erstellen zu können...

                    my->jaclplus prüft das ACL des Users

                    Kommentar


                    • #11
                      $notallow braucht ja auch die Bilddaten aus #__ponygallery um das Wasserzeichen erstellen zu können...
                      $notallow braucht erstmal gar nichts. Das ist nur ne simple Variable, die als noch simpleres Flag dient.

                      Aber wenn du den darauf folgenden Code brauchst, so kann das schon eher sein, dass dieser auch die Bilddaten benötigt um das Wasserzeichen zu erstellen.

                      Warum gibst du "ihm" also nicht die entsprechenden Daten? Der Code dafür existiert ja angeblich schon und braucht nur kopiert zu werden.

                      Anm.: Um Redundanzen zu vermeiden, sollte man vielleicht auf das kopieren verzichten und den entsprechenden Code nach außerhalb des if/else-Konstrukts verlagern.

                      Kommentar

                      Lädt...
                      X