2017-06-30 6 views
0

** ein FehlerWährend Absenden des Formulars, wirft es einen Fehler

Undefinierte Offset führt: 0 in C: \ xampp \ htdocs \ test_login \ add_data.php auf Leitung 10

10 Linie hat $ _SERVER [ "REQUEST_METHOD" == "POST"] **

<?php 
require_once 'mysql_connect.php'; 

if ($_SERVER["REQUEST_METHOD" == "POST"]) { 
    if (empty($_POST['username'])) { 
     echo "Username required."; 
    }else{ 
    $username = handle_data($_POST['username']); 
    } 

    if (empty($_POST['password'])) { 
     echo "Password required."; 
    } 
    else{ 
    $password = handle_data($_POST['password']); 
    } 

    if ($_POST['cpassword'] != $_POST['password']) { 
     echo "Passwords donot match!"; 
    } 

    if (!is_numeric($_POST['age'])) { 
     echo "Age must be a number."; 
    } 


$query = "INSERT INTO students(username, password, age) VALUES(?, ?, ?)"; 
$stmt = mysql_stmt_prepare($conn, $query); 
if ($stmt) { 
    mysqli_stmt_bind_param($stmt, 'ssi', $username, $password, $age); 
    mysqli_execute($stmt); 
    echo "Registration Made!"; 
    mysqli_stmt_close($stmt); 
    mysqli_close($conn); 
} 

} 

function handle_data($data){ 
$data = trim($data); 
$data = stripcslashes($data); 
$data = htmlspecialchars($data); 
return $data; 
} 

?> 

Was ist der tatsächliche Fehler es bei zeigt ??

+1

Mögliches Duplikat von [$ \ _ POST vs. $ \ _ SERVER \ ['REQUEST \ _METHOD' \] == 'POST'] (https://stackoverflow.com/questions/409351/post-vs-serverrequest- method-post) – Jenish

+0

Mögliches Duplikat von [Referenz - Was bedeutet dieser Fehler in PHP?] (https://stackoverflow.com/questions/12769982/reference-what-does-this-error-mean-in-php) –

+0

Es wird "REQUEST_METHOD" == "POST" 'mit == comparison ausgewertet, so dass 0 zurückgegeben wird, da sie nicht gleich sind und versucht $ _SERVER [0] zu holen. –

Antwort

2

Sie haben semantic error in dieser Zeile, REQUEST_METHOD ist ein Schlüssel, um die Methode von $_SERVER globale Variable zu erhalten. Ändern Sie diese Zeile

if ($_SERVER["REQUEST_METHOD" == "POST"]) { 

mit

if ($_SERVER["REQUEST_METHOD"] == "POST") { 

Sie dies auch mit $_POST globalen Variablen überprüfen kann als

if (isset($_POST) && !empty($_POST)) { 
0

Sie haben semantic error auf Linie keine 10

Verwendung dieses

if($_SERVER["REQUEST_METHOD"] == "POST"); 
+0

Es ist kein Syntaxfehler - es ist ein semantischer Fehler –

Verwandte Themen