ilch Forum » Ilch Clan 1.1 » Fehlersuche und Probleme » PN Newsletter schickt fehlerhaften Link

Geschlossen
  1. #1
    User Pic
    Thomas D. Mitglied
    Registriert seit
    03.01.2011
    Beiträge
    7
    Beitragswertungen
    0 Beitragspunkte
    Hallo,
    Habe heute einen Newsletter verfasst und diesen Per Newsletter herausgeschickt. Da ich in die Seite eine automatische e-Mail benachrichtigung eingebaut habe kommt ein direkter Link ins Postfach geflogen
    Bsp:

    ----------------------------------------------------------
    Hallo, du hast soeben eine Neue Nachricht mit dem Betreff:

    'Test e-Mail'

    bekommen. Diese Nachricht kannst du nun unter folgender Adresse mit Deinen Logindaten aufrufen:

    www.kiting-dudes.com/admin.php?forum-privmsg-showmsg-318

    Wir wünschen Dir noch einen schönen Tag!
    ----------------------------------------------------------

    Wenn man genau hinschaut steht da .../admin.php?....
    Daraus resultiert der fehler das die User in den Admin Bereich katapultiert werden. (Rechte vorausgesetzt)
    Wieso schmeisst der mir das kein index.php? hinein???
    Ich finde diesen Fehler einfach nicht.
    Suche wie bekloppt die include/func/user.php ab, ....
    Kann mir da jmd weiterhelfen?
    Suche ich an der Falschen stelle?

    Dies ist der Code den ich in der user.php eingefügt habe:

    /* Nachricht bei PM Anfang */
    function sendpm ($sid,$eid,$ti,$te,$status = 0) {
      $page = $_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"];
      
     
      if (!is_array($eid)) {
        $eid = Array( $eid );
      }
      
      // Alle Emfänger durchlaufen
      foreach ($eid AS $empf){
      
        // PM schreiben und ID speichern
        db_query("INSERT INTO `prefix_pm` (`sid`,`eid`,`time`,`titel`,`txt`,`status`) VALUES (".$sid.",".$empf.",'".time()."','".$ti."','".$te."',".$status.")");
        $last_id = db_last_id();
        
        // Alle Zeiten der letzten PMs abfragen, die nach dem letzten Login des Empfängers verschickt wurden
        $erg = db_query("SELECT `b`.`time` FROM `prefix_user` AS `a` LEFT JOIN `prefix_pm` AS `b` ON `a`.`id` = `b`.`eid` AND `b`.`id` != ".$last_id." WHERE `a`.`id` = ".$empf." AND `a`.`llogin` < `b`.`time`");
        
        // Wenn keine PM gefunden wurde, Email schreiben
        if( db_num_rows( $erg ) == 0 ){
            
            // Email-Adresse abfragen und Email verschicken
            $mail = db_result(db_query("SELECT `email` FROM `prefix_user` WHERE `id` = ".$empf),0);
            if (!empty($mail)) { icmail($mail,"Du hast eine neue Nachricht","Hallo, du hast soeben eine Neue Nachricht mit dem Betreff: \n\n'".$ti."' \n\n bekommen. Diese Nachricht kannst du nun unter folgender Adresse mit Deinen Logindaten aufrufen: \n\n".$page."?forum-privmsg-showmsg-".$last_id."\n\nWir wünschen Dir noch einen schönen Tag!"); }
     
        }
      }
    }


    betroffene Homepage: kiting-dudes.com
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    ändere mal folgendes:
    $page = $_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"];
    zu
    $page = $_SERVER["HTTP_HOST"].'index.php';
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    /**
     * getSiteURL()
     * Gibt die URL der Seite zurück, um z.B. Links zu erstellen
     *
     * @param boolean $endslash URL mit abschließendem Slash
     * @return string URL der Seite
     */
    function getSiteURL($endslash = true)
    {
        $site = 'http://' . $_SERVER['HTTP_HOST'];
        $dir = dirname($_SERVER['SCRIPT_NAME']);
        if (strlen($dir) == 1) {
            if ($endslash) {
                $site .= '/';
            }
        } else {
            $site .= $dir . ($endslash ? '/' : '');
        }
        return $site;
    }


    Hoffe das hilft weiter, index.php muss ach nicht zwanghaft im Link stehen, es sollte automatisch benutzt werden.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    1 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten