

端末からもらったデータは、空白・改行を取り除きたいですが、trimを実行したら、うまくmysqlに格納できません。
問題点を教えてください。
ソースコード↓↓
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
include 'DatabaseConfig.php'; ⇐こちらは問題ないです
$con = mysqli_connect($HostName,$HostUser,$HostPass,$DatabaseName);
$qrs = " 6月分
2020/05/29
2020/05/11
12A-34B-4567C
A購入
10"; ⇐この数字は不要です。
$quantity = $_POST['BQUANTITY'];
$area = $_POST['BAREA'];
$qr = explode("\n",qrs);
str0 = trim(qr[0],"\n\r");
str1 = trim(qr[0],"\n\r");
str2 = trim(qr[0],"\n\r");
str3 = trim(qr[0],"\n\r");
str4 = trim(qr[0],"\n\r");
$Sql_Query = ("set names utf8");
$Sql_Query = "INSERT INTO phptest (CYUBAN,NOUKI,RNOUKI,HINBAN,KHINBAN,QUERY,AREA) values ('$str0','$str1','$str2','str3','$str4','$quantity','$area')";
if(mysqli_query($con,$Sql_Query))
{
echo '入庫しました。';
}
else
{
echo 'エラー発生しました。';
}
}
mysqli_close($con);
?>
よろしくお願いいたします。

No.3ベストアンサー
- 回答日時:
更についでですが。
> values ('$str0','$str1','$str2','str3','$str4','$quantity','$area')";
ちなみにAccessとかを少し触った程度ですけど気になった点として値の与え方なのですが、'$str0' とかって変数の値を書き込んでいるのではなく文字列にしてしまった変数名を書き込んでませんでしょうか?
https://www.flatflag.nir87.com/update-950
経験皆無なので違うかも知れませんが、パラメーターでセットして更新が普通なのかなって。
返信遅くなり申し訳ありません。
問題解決しました。
なんが、PHPの書き方が間違っているようですが、
色々を弄って、出来ました。
色々教えてもらってありがとうございました。
現在のソースコードは貼り付けます。
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
include 'DatabaseConfig.php';
$con = mysqli_connect($HostName,$HostUser,$HostPass,$DatabaseName);
if($con == false){
echo "接続エラー!エラーメッセージは".mysql_error($con);
exit();
}else{
$qr = $_POST['BQR'];
$quantity = $_POST['BQUANTITY'];
$area = $_POST['BAREA'];
$qrs = explode("\r\n",$qr);
$str0 = trim($qrs[0],"\n\r");
$str1 = trim($qrs[1],"\n\r");
$str2 = trim($qrs[2],"\n\r");
$str3 = trim($qrs[3],"\n\r");
$str4 = trim($qrs[4],"\n\r");
$Sql_Query = ("set names utf8");
$Sql_Query = "INSERT INTO bks_main (CYUBAN,NOUKI,RENOUKI,ZUBAN,NC,SURYO,TANABAN) values ('$str0','$str1','$str2','$str3','$str4','$quantity','$area')";
if(mysqli_query($con,$Sql_Query))
{
echo '入庫しました。';
}
else
{
echo 'エラー発生しました。';
}
}
}
mysqli_close($con);
?>
No.1
- 回答日時:
PHPは良くわかりません!!!!!!
取り敢えずググって弄ったら
$qrs = " 6月分
2020/05/29
2020/05/11
12A-34B-4567C
A購入
10";
$qrs = trim($qrs);
$qr = explode("\n",$qrs);
var_dump($qr);
結果:
array(6) {
[0]=>
string(7) "6月分"
[1]=>
string(10) "2020/05/29"
[2]=>
string(10) "2020/05/11"
[3]=>
string(13) "12A-34B-4567C"
[4]=>
string(7) "A購入"
[5]=>
string(2) "10"
}
こんな結果になりました。
質問文では分割した変数内に改行があるように思われている?みたいですが、分割した際にもうすでに消えているのではないかなと。
VBAのSplit関数とかならそう受け取ってコードを書いた事はありますけど。
str0 = trim(qr[0],"\n\r");
str1 = trim(qr[0],"\n\r");
str2 = trim(qr[0],"\n\r");
str3 = trim(qr[0],"\n\r");
str4 = trim(qr[0],"\n\r");
ここはそれぞれの変数に入れる配列のインデックス番号はそれぞれで違うのではなくて?
PHPは初心者以下の者ですからもし違うようでしたらモニターのスイッチを切ってなかった事にしてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
php→JavaScript間の変数受け渡し
-
php文字列中のシングルクオート...
-
urldecodeについて
-
【PHP】ページを更新すると勝手...
-
FTPコマンドでディレクトリごと...
-
【file_exists】ファイルが存在...
-
makefile でファイルをコピーす...
-
header(Location:~)で$_SESS...
-
PHP ver5~の、SQLインジェ...
-
CFileDialogの最初のディレクト...
-
シェルスクリプトをPHPで動かそ...
-
ビットマップ画像を読み込むプ...
-
PHPでネットワークドライブのop...
-
csvデータをテーブル表示、指定...
-
日付と年月日を選択するコード...
-
.phpと.incファイルの違いはな...
-
phpログファイルの文字化けにつ...
-
絶対パス?絶対アドレス?意味...
-
FORMで送信ボタンと戻るボタン...
-
現在位置より2つ上のディレク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php文字列中のシングルクオート...
-
GETの値について
-
include/require文へのバリデー...
-
特定の漢字に\\マークが入って...
-
PHP3の文字化け
-
外部参照のランダムリンクについて
-
PHPにおいて16進数のアスキー文...
-
PHPのGETとPOSTの処理を学習中...
-
PHPのエスケープシーケンスに関...
-
0dで始まる文字列の比較がうま...
-
パラメーター付きのURLをリダイ...
-
PHPでカンマ区切り文字列を数値...
-
PHPにおいて、配列データをMySQ...
-
リダイレクトできません。クエ...
-
PHPでPが2個あるので分かりず...
-
検索に関する文字コード
-
仕様ならしようがない(洒落)
-
hexdec(uniqid())でE+15が付く
-
urldecodeについて
-
if ('0.0'=='0'){ の0.0とは何
おすすめ情報