私は$qA01_1
から$qA30_5
までの150の変数を持っています。変数は、セッションごとにランダムに0または1または5の値を持つことができます。私は値1を持ち、データベース(テーブル "1")に保存するすべての変数を選択したいと思います。値0(テーブル "ゼロ")と5(テーブル "5")についても同じです。私のコードで助けてくれますか?私は英語ですみません。すべてがはっきりしていることを望む。配列からすべての数値1を取得してDBに保存するにはどうすればいいですか?
ここに私の短縮配列されていますのみ$qA01_5
までの変数$qA01_1
ため
<?php
session_start();
// variables from
$qA01_1 = $_SESSION['qA01_1'];
$qA01_2 = $_SESSION['qA01_2'];
$qA01_3 = $_SESSION['qA01_3'];
$qA01_4 = $_SESSION['qA01_4'];
$qA01_5 = $_SESSION['qA01_5']
// up to
$qA30_1 = $_SESSION['qA30_1'];
$qA30_2 = $_SESSION['qA30_2'];
$qA30_3 = $_SESSION['qA30_3'];
$qA30_4 = $_SESSION['qA30_4'];
$qA30_5 = $_SESSION['qA30_5'];
?>
マイ短縮コード、(動作しない):
<?php
$connect = @MySQL_Connect('localhost', 'root', ' ', 'db');
$vars = get_defined_vars();
foreach ($vars as $varName => $varValue) {
if (strpos($varName, 'qA') !== false && $varValue === 1) {
mysqli_query($connect, "INSERT INTO one ((ifnull(qA01_1, 0) + ifnull(qA01_2, 0) + ifnull(qA01_3, 0) + ifnull(qA01_4, 0) + ifnull(qA01_5, 0)) VALUES ('" .$varName. "', '" .$varValue. "')");
}
}
?>
のStackOverflowへようこそ!あなたは 'MySQL'と' MySQLi'の両方を混在させているように見えるので、あなたは本当に何も挿入しません。 mysqli_connect( 'localhost'、 'root'、 ''、 'db'); 'のようにMySQLi(またはPDO)を使用してください。 –
接続が変更されました。新しい接続は今:$ connect = mysqli_connect( 'localhost'、 'root'、 ''、 'db');しかし、まだ動作しません。私は別の問題があると思います。 – Nezdecek