안녕하십니까, 이것은 스택 overflow.com의 내 첫 번째 게시물입니다. 장바구니를 만들려고합니다. 값은 2 차원 테이블의 세션에 저장됩니다. 첫 번째 값은 데이터베이스에있는 항목 ID, 두 번째 항목 수를 나타냅니다.장바구니에서 unset()을 사용하여 항목을 제거하면 mysql 오류가 발생합니다.
foreach($cart_array as $row){
$sql = "SELECT * FROM prod_table WHERE id=".$row['0']."";
$cart_result = mysql_query($sql, $conn);
while ($array = mysql_fetch_array($cart_result)) {
echo "<tr><td>". $array[manufacturer] . "</td>";
echo "<td>". $array[model]."</td>";
echo "<td>".$row['1']."</td>";
$cart_value = $array[price]*$row['1'];
//sum and store value of all products
$total_cart_value += $cart_value;
echo "<td>£" .$cart_value. "</td>";
echo "<td><a href='search.php?kick_id=".$row['0']."'>Remove</a></td></tr>";
확인, 항목 폼 카트 사용자가 클릭 제거한 다음 그는 같은 페이지로 다시 전송되고있는 (어떤 이유로 내가 GET 방식으로 $ _SERVER [ 'PHP_SELF'을} 사용하는 데 어려움이 있었다 제거하는 ...) 그리고 unset 기능을 사용하여 $ cart_array에서 한 쌍의 값을 제거 할 코드의 다른 부분이 트리거됩니다.
if(isset($_GET['kick_id'])) {
$t = count($cart_array);
for($u = 0; $u < $t; $u++){
if ($cart_array[$u]['0'] == $_GET['kick_id']){
unset($cart_array[$u]['0']);
unset($cart_array[$u]['1']);
echo " Item has been removed from your cart";
$cart_array = array_values($cart_array);
그리고 실제로 대신 실행하는 지금,하지만 값의 쌍을 제거 원활는 오류 메시지를 표시합니다 경고 :로 MYSQL_ASSOC를() : 공급 인수가 ... 유효한 MySQL의 결과 리소스 아니다 나는 가정이 오류를 일으키는 세션 배열에서 삭제 된 값의 "추적"이어야합니다. 코드를 수정하는 방법? 값을 삭제하는 다른 방법/접근 방법이 있습니까 ??
덕분에 도움이되었습니다. –