PHP Skript "die"-Funktion ausschalten

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

  • PHP Skript "die"-Funktion ausschalten

    Hallo liebe Forummitglieder;

    leider verstehe ich nicht viel von php, daher hoffe ich hier auf Hilfe.

    Ich habe ein PHP-Skript, welches ein Bild einer Gallerie zu den Favoriten des angemeldeten Users hinzufügt...

    Leider "stirbt" das Hinzufügen immer mit "Stop Hacking Attempt!"....

    Gibt es denn eine Möglichkeit, diese "if" "die" Funktion zu löschen, sodass das Script einfach weitermacht, ohne diese Variable zu überprüfen?

    Ich scheitere bereits seit 3 Tagen an der Lösung des Problems...

    Hier das Script:
    PHP-Code:
      /**
       * Method to add an image to the favourites or the zip download
       *
       * @access  public
       * @return  boolean True on success, false otherwise
       * @since   1.0.0
       */
      
    function addImage()
      {
        
    $this->_db->setQuery("SELECT
                                id
                              FROM
                                "
    ._JOOM_TABLE_IMAGES." AS a
                              LEFT JOIN
                                "
    ._JOOM_TABLE_CATEGORIES." AS c ON a.catid = c.cid
                              WHERE
                                    a.id        = "
    .$this->_id."
                                AND a.approved  = 1
                                AND a.published = 1
                                AND c.access    IN ("
    .implode(','$this->_user->getAuthorisedViewLevels()).")
                                AND c.published = 1
                            "
    );
        if(!
    $this->_db->loadResult())
        {
          die(
    'Stop Hacking attempt!');
        }

        
    $catid JRequest::getInt('catid');

        if(
    is_null($this->piclist))
        {
          if(
    $this->using_database)
          {
            if(
    $this->user_exists)
            {
              
    $this->_db->setQuery("UPDATE
                                      "
    ._JOOM_TABLE_USERS."
                                    SET
                                      piclist = "
    .$this->_id."
                                    WHERE
                                      uuserid = '"
    .$this->_user->get('id')."'
                                  "
    );
            }
            else
            {
              
    $this->_db->setQuery("INSERT INTO
                                      "
    ._JOOM_TABLE_USERS."
                                      (uuserid, piclist)
                                    VALUES
                                      ("
    .$this->_user->get('id').", ".$this->_id.")
                                  "
    );
            }

            
    $return $this->_db->query();
          }
          else
          {
            
    $this->_mainframe->setUserState('joom.favourites.pictures'$this->_id);
          }
        }
        else
        {
          
    $piclist_array explode(','$this->piclist);

          if(
    in_array($this->_id$piclist_array))
          {
            
    // Image is already in there
            
    $this->_mainframe->enqueueMessage($this->output('ALREADY_IN'));
            return 
    true;
          }
          if(
    count($piclist_array) == $this->_config->get('jg_maxfavourites'))
          {
            
    // Maximum number of images already reached
            
    $this->_mainframe->enqueueMessage($this->output('ALREADY_MAX'));
            return 
    true;
          }

          if(
    $this->using_database)
          {
            
    $this->_db->setQuery("UPDATE
                                    "
    ._JOOM_TABLE_USERS."
                                  SET
                                    piclist = '"
    .$this->piclist.', '.$this->_id."'
                                  WHERE
                                    uuserid = "
    .$this->_user->get('id')."
                                "
    );
            
    $return $this->_db->query();
          }
          else
          {
            
    $this->_mainframe->setUserState('joom.favourites.pictures'$this->piclist.','.$this->_id);
          }
        }

        if(isset(
    $return) && !$return)
        {
          
    $this->setError($this->_db->getErrorMsg());
          return 
    false;
        }

        
    $this->_mainframe->enqueueMessage($this->output('SUCCESSFULLY_ADDED'));

        
    $this->_mainframe->triggerEvent('onJoomAfterAddFavourite', array($this->_id));

        return 
    true;
      } 

  • #2
    Hi,

    das hat schon nen Grund, dass die if Abfrage vorhanden ist!

    mfg streuner
    Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
    der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

    "Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"

    Kommentar


    • #3
      Ja, ich glaube, sie Überprüft, ob der jeweilige User sein eigenes Bild (aus seiner eigenen Gallerie) als Favoriten hinzufügt.

      Aber ich brauche diese Funktion nicht, da ich die Galerie-Zuordnung auf andere Art löse...

      Hier resultiert es nun immer in der Die-Funktion, also stört sie hier eher als dass sie vor irgendwas schützt...

      Kommentar


      • #4
        Zitat von streuner Beitrag anzeigen
        das hat schon nen Grund, dass die if Abfrage vorhanden ist!
        weil der Autor nicht in der Lage ist solche Fehler richtig zu behandeln? Toller "Grund".

        @kaukasus

        einfach die Zeile auskommentieren, Doppelkreuz davor

        PHP-Code:
        # die(... 
        Kann natürlich etliche Fehler nach sich ziehen.

        Kommentar


        • #5
          Kann natürlich etliche Fehler nach sich ziehen.
          ...genau darauf wollte ich hinaus.

          mfg streuner
          Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
          der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

          "Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"

          Kommentar


          • #6
            Hey chron, danke für deine Hilfe.

            Leider bekomme ich nun folgende Fehlermeldung:

            You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 5 SQL=INSERT INTO jos_joomgallery_users (uuserid, piclist) VALUES (295, )

            Wie es scheint, habe ich entweder irgendwo etwas falsch eingestellt, oder ich muss die komplette Galleriestruktur neu aufsetzen/ändern...

            Falls du da noch ne Idee hättest?

            Kommentar


            • #7
              Leider bekomme ich nun folgende Fehlermeldung:

              You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 5 SQL=INSERT INTO jos_joomgallery_users (uuserid, piclist) VALUES (295, )

              Wie es scheint, habe ich entweder irgendwo etwas falsch eingestellt, oder ich muss die komplette Galleriestruktur neu aufsetzen/ändern...

              Falls du da noch ne Idee hättest?
              ganz ernsthaft: such Dir ein neues Script! So musst Du Dich um den Fehler kümmern, dann kommt evtl. noch einer usw. Evtl. entstehen auch Fehler, die du auf den ersten Blick auch nicht bemerkst! Lieber etwas "ausgereifteres" suchen, als die ganze Arbeit & Zeit in die Behebung von Fehlern eines Scriptes zu verschwenden.

              mfg streuner
              Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
              der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

              "Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"

              Kommentar


              • #8
                Ja, das dachte ich mir leider....

                Habe nun die Favoritenfunktion auschstellen müssen, schade...

                Kommentar

                Lädt...
                X