wake-up-neo.net

Hinweis: Undefinierter Index: HTTP_REFERER

Hinweis: Undefinierter Index: HTTP_REFERER

$ http_referer = $ _SERVER ['HTTP_REFERER']

ich habe dies aus Tutorial verwendet. Und es sieht okay aus

auch Code ruft sie aus der Datei auf

was soll ich ändern?

Ich habe print_r ($ _ SERVER) hinzugefügt; und jetzt gibt mir diese Seite

 Array ([UNIQUE_ID] => UoSxWa56310AAAwUckIAAAAA
        [HTTP_Host] => movafaghha.com
        [HTTP_COOKIE] => __utma=210711305.58608218.1372977010.1372977010.1372977010.1; __utmz=210711305.1372977010.1.1.utmcsr=who.is|utmccn=(referral)|utmcmd=referral|utmcct=/whois/movafaghha.com; PHPSESSID=83eb0e2ae7ebe4b6c2eeb071d9f5de71
        [HTTP_X_REAL_IP] => 109.109.41.81
        [HTTP_X_FORWARDED_Host] => movafaghha.com
        [HTTP_X_FORWARDED_SERVER] => movafaghha.com
        [HTTP_X_FORWARDED_FOR] => 109.109.41.81
        [HTTP_CONNECTION] => close 
        [HTTP_CACHE_CONTROL] => max-age=0 
        [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 
        [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.48 Safari/537.36 
        [HTTP_ACCEPT_LANGUAGE] => en-US,en;q=0.8,fa;q=0.6 
        [PATH] => /sbin:/usr/sbin:/bin:/usr/bin
        [SERVER_SIGNATURE] =>
        [SERVER_SOFTWARE] => Apache 
        [SERVER_NAME] => movafaghha.com 
        [SERVER_ADDR] => 174.122.223.93 
        [SERVER_PORT] => 80 
        [REMOTE_ADDR] => 109.109.41.81 
        [DOCUMENT_ROOT] => /home/memarest/public_html/movafaghha.com 
        [SERVER_ADMIN] => [email protected] 
        [SCRIPT_FILENAME] => /home/memarest/public_html/movafaghha.com/tutorials/login200/register.php 
        [REMOTE_PORT] => 49737 
        [GATEWAY_INTERFACE] => CGI/1.1 
        [SERVER_PROTOCOL] => HTTP/1.0 
        [REQUEST_METHOD] => GET 
        [QUERY_STRING] => 
        [REQUEST_URI] => /tutorials/login200/register.php 
        [SCRIPT_NAME] => /tutorials/login200/register.php 
        [PHP_SELF] => /tutorials/login200/register.php 
        [REQUEST_TIME_FLOAT] => 1384427865.54 
        [REQUEST_TIME] => 1384427865 
        [argv] => Array ( ) 
        [argc] => 0 
    ) 

der Code wurde bearbeitet, aber es ist immer noch nicht möglich, alle Felder zu wiederholen 

<?php

ini_set("display_errors", true);
error_reporting(E_ALL);

require 'core.inc.php';






if(!loggedIn()) {

//check mikunim ke tamame field ha dar form vojod darand va set shudan

if(isset($_POST['username'])&&isset($_POST['password'])&&isset($_POST['password_again'])&&isset($_POST['firstname'])&&isset($_POST['surename'])) {

    $username = $_POST['username'];
    $password = $_POST['password'];
    $password_again = $_POST['password_again'];
    $firtsname = $_POST['firstname'];
    $surename = $_POST['surename'];



    //HALA CHECK MIKUNIM KHALI HASTAND YA NA

    if(!empty($username)&&!empty($password)&&!empty($password_again)&&!empty($firstname)&&!empty($surename)){
        echo 'ok' ;

    } else {

        echo ' All fields are required';

    }

}




?>

<form action="register.php" method="POST">
Username:<br> <input type="text" name="username"><br> <br>
Password:<br> <input type="password" name="password"><br><br>
Password again:<br> <input type="password" name="password_again"><br><br>
Firstname:<br> <input type="text" name="firstname"><br><br>
Surname:<br> <input type="text" name="surename"><br><br>
<input type="submit" value="register">



</form>

<?php

} elseif (loggedIn()) {

    echo 'you \'re already logged in';
    }

?>

jetzt nach dem Hinzufügen 

"e"

seite sagt "alle Felder sind erforderlich"

aber auch wenn alle Felder ausgefüllt werden, ändert sich die Nachricht nicht

16
Mojtaba

HTTP_REFERER Es kann nicht garantiert werden, dass er vom Client gesendet wird:

Die Adresse der Seite (falls vorhanden), die den Benutzeragenten auf die aktuelle Seite verweist. Dies wird vom Benutzeragenten festgelegt. Nicht alle Benutzeragenten legen dies fest, und einige bieten die Möglichkeit, HTTP_REFERER als Funktion zu ändern. Kurz gesagt, es kann nicht wirklich vertraut werden. 

In Ihrem Fall wird eindeutig nicht gesendet, also können Sie wirklich alles tun

if(isset($_SERVER['HTTP_REFERER'])) {
  //do what you need to do here if it's set    
   }
else
{
   //it was not sent, perform your default actions here
}
47
Stephen Byrne
if (isset($_SERVER['HTTP_REFERER'])) {$THE_REFER=$_SERVER['HTTP_REFERER']}
4
Mahdi Jazini

Undefinierter Index bedeutet, dass der Array-Schlüssel nicht festgelegt ist. 

var_dump($_POST); die(); 

vor der Zeile, die den Fehler ausgibt, und sehen, dass Sie versuchen, einen nicht vorhandenen Array-Schlüssel zu erhalten.

0
ashish

Der richtige Weg zu finden ist

$my_referer = isset($_POST['referer']) ? trim($_POST['referer']) : (isset($_SERVER['HTTP_REFERER']) ? base64_encode($_SERVER['HTTP_REFERER']) : false);
0
rn consulting

HTTP_REFERER wird für mich auch nicht gesendet, daher verwende ich diese Kombination:

$my_url = $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];

Ich habe print_r($_SERVER) benutzt, um zu sehen, was gesendet wurde und was ich verwenden konnte.

0
Adel Ben ahmed