0

私は現在、YouTubeのPHPアカデミーからのPHPチュートリアルに従っており、ショッピングカートを作成していますこれまでのところ、追加された製品を説明するためにセッションを使用しています。セッションをエコーし​​ようとすると、Notice: Undefined index: cart_1 in C:\Program Files\wamp\www\Formula One\script\cart.php on line 28エラーが発生します。なんでそうなの?チュートリアルビデオでは、次のページに1が追加され、もう一度クリックすると2になります。彼らのフォーラムを見ると、前に使用するいくつかの提案がありますISSET。どうもありがとう。

 <?php
session_start();

include("../script/dbconnect.php");

$page1 = 'index.php'; //page reference

if (isset($_GET['add'])) { // cart add button
    $_SESSION['cart_'.$_GET['add']]+='1';
}

function products() {
    $get = mysql_query('SELECT id, name, description, price FROM products WHERE quantity > 0 ORDER BY id DESC');
    if (mysql_num_rows($get) ==0) {
    echo"There are no products to display!";
    }
else {
  while ($get_row = mysql_fetch_assoc($get)) {
        echo '<p>'.$get_row['name'].'<br />'.$get_row['description'].'<br />'.$get_row['price'].' <a href="cart.php?add='.$get_row['id'].'">Add Here</a></p>';
        }
    }
}

echo $_SESSION['cart_1'];

?>
4

1 に答える 1

0

未定義の可能性がある変数を使用する前に、チェックを追加する必要があります

if(!isset($_SESSION['cart_'.$_GET['add']])) 
       $_SESSION['cart_'.$_GET['add']] = 0;

$_SESSION['cart_'.$_GET['add']]+='1';

if(isset($_SESSION['cart_1']))
    echo $_SESSION['cart_1'];
else
    echo "session cart_1 not defined";

リンクされたビデオでは、作成者のerror_reporting ini php.iniがおそらくに設定されているため、エラーは表示されませんE_ALL & ~E_NOTICE

編集:私は今ビデオを見ます。次の場所にある別のチュートリアルを探してみてください。

于 2013-01-03T18:20:42.903 に答える