This question already has answers here:
“Notice: Undefined variable”, “Notice: Undefined index”, and “Notice: Undefined offset” using PHP
                                
                                    (28个答案)
                                
                        
                                4年前关闭。
            
                    
我正在使用PDO方法从SQL中获取数据,但是由于SQL是新手,因此无法从PDO数据库中获取数据很难理解

但是我做了下面的代码,但是不起作用有人可以帮我吗



<?php

$servername = "localhost";
$username = "sanoj";
$password = "123456";
$dbname = "test";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $conn->prepare("SELECT * FROM members");
    $stmt->execute();
    // set the resulting array to associative
    $membid=($_GET['memberID']);
$email=($_GET['email']);
$state=($_GET['username']);
    }
catch(PDOException $e) {
    echo "Error: " . $e->getMessage();
}



echo $membid;
echo $email;
echo $state;
$conn = null;
echo "</table>";
?>


我得到的错误

Notice: Undefined index: memberID in C:\Users\sanoj\Documents\NetBeansProjects\godaddy optimized\data.php on line 14
Call Stack
#   Time    Memory  Function    Location
1   0.0020  132392  {main}( )   ..\data.php:0

( ! ) Notice: Undefined index: email in C:\Users\sanoj\Documents\NetBeansProjects\godaddy optimized\data.php on line 15
Call Stack
#   Time    Memory  Function    Location
1   0.0020  132392  {main}( )   ..\data.php:0

( ! ) Notice: Undefined index: username in C:\Users\sanoj\Documents\NetBeansProjects\godaddy optimized\data.php on line 16
Call Stack
#   Time    Memory  Function    Location
1   0.0020  132392  {main}( )   ..\data.php:0

最佳答案

使用$_GET变量不会使您使用PDO从数据库中获取数据。您一直在做,直到$stmt->execute();。接下来需要做的是:

while($result = $stmt->fetch(PDO::FETCH_ASSOC))
{
    foreach($result as $key => $value)
        echo $key.': '.$value.'<br/>';
    echo '<hr/>';
}


获取您的数据。

$_GET array用于从URLGET Ajax调用中获取数据。

07-24 16:55
查看更多