Varriablen (GET) werden nicht übernommen

creamycewie

Mitglied
Hi, ich hab folgendes Problem:

Ich hab meine cookie.php
Der User wird auf diese verlinkt.

Die sieht so aus:
PHP:
<?php
error_reporting(E_ALL);

// Varriablen übernehmen
$Token = $_GET[Token];

//Cookies setzen
	setcookie("UserId",$_GET[UserID],0);
	setcookie("Email",$_GET[Email],0);

// Cookies prüfen
var_dump ($_COOKIE["UserID"]);
var_dump ($_COOKIE["Email"]);
?>

Dabei hab ich folgendes Problem:
Notice: Use of undefined constant ModiusToken - assumed Token' in /home/.sites/127/site693/web/TEST/cookie.php on line 5

Notice: Use of undefined constant UserID - assumed 'UserID' in /home/.sites/127/site693/web/TEST/cookie.php on line 8

Notice: Use of undefined constant Email - assumed 'Email' in /home/.sites/127/site693/web/TEST/cookie.php on line 9

Notice: Undefined index: Email in /home/.sites/127/site693/web/TEST/cookie.php on line 9

Notice: Undefined index: UserID in /home/.sites/127/site693/web/TEST/cookie.php on line 12
NULL
Notice: Undefined index: Email in /home/.sites/127/site693/web/TEST/cookie.php on line 13
NULL

Wieso werde die Varriablen nicht übernommen?

Die URL ist:

cookie.php?UserID=1&Email=test@gmail.com&Token=1234567

Danke & Lg

Creamy
 
' vergessen
PHP:
//Deine Version
$Token = $_GET[Token]; 
//und so wie es sein sollte
$Token = $_GET['Token'];

Natürlich weiter unten bei UserID und Email ebenfalls

Wenn du ohne ' oder " schreibst, sucht PHP eine Konstante mit dem Namen.
Das kannst du natürlich auch machen. Würde dann so aussehen. Das lohnt sich aber nur mit Strings die mehrfach verwendet werden.
PHP:
define('C_Token', 'Token');
$Token = $_GET[C_Token];
 
Aaah, danke, doch so simpel :)

Die Fehler werden immer weniger, jetz meckert er nur noch bei:

Notice: Undefined index: UserID in /home/.sites/127/site693/web/TEST/shop/login-finish.php on line 12
NULL
Notice: Undefined index: Email in /home/.sites/127/site693/web/TEST/shop/login-finish.php on line 13
NULL

PHP:
<?php
error_reporting(E_ALL);

// Varriablen übernehmen
$Token = $_GET['ModiusToken'];

//Cookies setzen
	setcookie("UserId",$_GET['UserID'],0);
	setcookie("Email",$_GET['Email'],0);

// Cookies prüfen
var_dump ($_COOKIE["UserID"]);
var_dump ($_COOKIE["Email"]);
?>

also beim Setzen der Cookies, oder?
 
Zuletzt bearbeitet:
Das heisst, dass in deiner $_GET keine UserID gibt.
überprüfe mit isset($_GET['UserID']) ab sie überhaubt abgefüllt ist.

Zum testen kannst du dir auch einfach mal mit var_dump($_GET) dein ganzer GET ausgeben lassen. Dann siehst du selber was alles übergeben wird.

Nachtrag:
Es ist eine Notiz, keine Fehlermeldung...... Aber du hast error_reporting(E_ALL), ergo werden auch Notizen ausgegeben
 
Du solltest vielleicht vorher prüfen, ob diese Indizes auch in deinem Array enthalten sind:
PHP:
error_reporting(E_ALL);

if(isset($_GET['ModiusToken']))
{
  $Token = $_GET['ModiusToken'];
}
else
{
  $Token = ''; # standardwert
}

if(isset($_GET['UserID']) && isset($_GET['Email']))
{
  setcookie('UserId', $_GET['UserID'], 0);
  setcookie('Email',  $_GET['Email'],  0);
}
else
{
  echo 'Fehler!';
}
 
Warum gibts keine UserID, diese wird doch per URL übergeben.

Die URL in der Adresszeile sieht so aus:

cookie.php?UserID=1&Email=test@gmail.com&Token=1234567
 
Zurück