質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

3回答

1389閲覧

[PHP]エラーの原因が分かりません。。。

newyee

総合スコア213

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

1グッド

1クリップ

投稿2017/11/01 09:32

エラーの原因を教えて下さい...
以下が僕が作成したコードになります。

php

1 2<?php 3require_once '../include/config/const.php'; 4require_once '../include/model/function.php'; 5require_once '../include/model/cart.php'; 6 7date_default_timezone_set('Asia/Tokyo'); 8$date = date("Y/m/d H:i:s"); 9$check = FALSE; 10$check_cart = array(); 11$cart_item_id = array(); 12$err_msg = array(); 13$convert_item_id = array(); 14$product_id = 0; 15$img = ''; 16$amount = 0; 17 18 19session_start(); 20 21$link = get_db_connect(); 22//$check_cart = check_cart_array($link); 23//die(var_dump($cart_product_id)); 24 25 26if($_SERVER['REQUEST_METHOD'] === 'POST'){ 27 28 $item_id = $_POST['product_id']; 29 $cart_item_id = get_product_id($link); 30 31 32 foreach ($cart_product_id as $value) { 33 34 $convert_item_id[] = $value['item_id]; 35 36 } 37 38 39 40 //die(var_dump($cart_product_id)); 41 42 if(in_array($item_id,$convert_item_id,true) === FALSE){ 43 44 $sql = 'INSERT INTO cart_table(user_id,item_id,amount,created_date) 45 VALUES('. $_SESSION['user_id'] . ',' . $item_id . ',1' . ',\'' . $date . '\')'; 46 47 $check = cart_sql($link,$sql); 48 49 50 if($check === FALSE){ 51 52 $err_msg[] = 'cart_table:insertエラー' . $sql; 53 } 54 55 56 }else{ 57 58 59 $sql = 'UPDATE cart_table SET amount = amount + 1'; 60 61 62 if(cart_sql($link,$sql) === FALSE){ 63 $err_msg[] = 'cart_table:UPDATEエラー' . $sql; 64 } 65 66 } 67 68} 69 70 71 72include_once '../include/view/cart.php'; 73

エラーの内容としましては、
「Parse error: syntax error, unexpected 'INSERT' (T_STRING), expecting ']' in /home/ubuntu/workspace/public/cart.php on line
43」
と表示される次第です。
どなたか教えて下さる方いましたらご教授お願いします...

退会済みユーザー👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

33行目の$value['item_id];が原因です。
$value['item_id'];に直しましょう。

投稿2017/11/01 09:35

hota1024

総合スコア354

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

newyee

2017/11/01 09:39

お早い回答ありがとうございました!
guest

0

cart.php の43行目前後の記載を確認してみてください
ちなみにご提示の「 cart_sql()」はprepare処理など非対応なのでしょうか?
インジェクション対策が不十分に見受けられます

投稿2017/11/01 09:40

yambejp

総合スコア114572

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

newyee

2017/11/01 09:53

現在プログラミンスクールの課題を行っているのですが、今はまだそういったセキュリティー対策のことまでは、進んでいないんですよね... 単に勉強不足なだけですね^^;
guest

0

$convert_item_id[] = $value['item_id];

$convert_item_id[] = $value['item_id'];

になっていないのでitem_id以降が文字列として扱われています。

投稿2017/11/01 09:38

naohiro19_

総合スコア178

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

newyee

2017/11/01 09:40

ご回答くださりありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問