の正しい作業PDOサーバーのコピーを入手できますどのように私は多くのlessionと読書に行うPDOに新しいですが、PDOサーバーコードに以下の私のmysqliのコードを変換しようとしています:私は私のコード
すべての変更しようとし<?php
include "init.php";
session_start();
if (!isset($_SESSION["cart_array"]) || count($_SESSION["cart_array"]) < 1) {
echo "<h2 align='center'>Your shopping cart is empty</h2>";
exit();
}
elseif (!isset($_SESSION["user_name"]) || count($_SESSION["user_name"]) < 1) {
$book=RAND(1000000, 2000000);
foreach ($_SESSION["cart_array"] as $each_item) {
$item_id = $each_item["item_id"];
$qty = $each_item["quantity"];
if($item_id =='sms')
{
$msg = $each_item["msg"];
$qty = 1;
}
mysqli_query($conn, "insert into books (book, item_name, quantity, msg) values ('$book', '$item_id', '$qty', '$msg')") or die(mysqli_error());
}
echo "<div class='info_post'>YOUR SHOPPING BOOKED CODE IS ' . $book . ' KINDLY COPY TO ANY DEALER NEAR YOU TO COMFIRM<br/ ></div><form action='mail.php' method='POST'><b> Mail me:</b><br/ >
<input type='text' name='book' size='23'> <input type='submit' name='submit' value='SEND EMAIL'></form>";
unset($_SESSION["cart_array"]);
}
elseif (isset($_SESSION["user_name"]) || count($_SESSION["user_name"]) > 1) {
$username=$_SESSION["user_name"];
$query=mysqli_query($conn, "select * from users where username='$username'");
if($row = mysqli_fetch_array($query))
{
$id=$row["id"];
$username=$row["username"];
$ip=$row["ip"];
$ban=$row["validated"];
$balance=$row["balance"];
$buy="$cartTotal";
{
if($ban != "0")
{
echo "<div class='info_post'><b>$buy $balance $ban</div>";
}
}
if($buy<$balance)
{
$redut = $balance-$buy;
$go = mysqli_query($conn,"update users set balance='$redut' where id='$id'");
if($go)
{
$book=RAND(1000000, 2000000);
foreach ($_SESSION["cart_array"] as $tem) {
$m = $tem["item_id"];
$p = $tem["quantity"];
$gob = mysqli_query($conn, "insert into books (book, item_name, quantity) values ('$book', '$m', '$p')") or die(mysqli_error());
$msg = "Transation of $totalquantity products cost of $cartTotal occur on your account with ticket id $book";
$time = date('Y-m-d H:i:s');
mysqli_query($conn, "insert into details (poster, message, date) values ('$username', '$msg', '$time')") or die(mysqli_error());
if($gob)
{
echo "jamjamja $book";
unset($_SESSION["cart_array"]);
}
else
{
echo "nootjo";
}
}
}
}
}
}
?>
ここではPDOサーバにするコードは、コードのようにどのように私のコードを見ている:これまでにクエリが($ _SESSION [ "USER_NAMEに送信されたときに、PDO方法私のコードを使用すると、出力結果がないことを言って申し訳ありません
<?php
include "init.php";
session_start();
if (!isset($_SESSION["cart_array"]) || count($_SESSION["cart_array"]) < 1) {
echo "<h2 align='center'>Your shopping cart is empty</h2>";
exit();
}
elseif (!isset($_SESSION["user_name"]) || count($_SESSION["user_name"]) < 1) {
$book=RAND(1000000, 2000000);
foreach ($_SESSION["cart_array"] as $each_item) {
$item_id = $each_item["item_id"];
$qty = $each_item["quantity"];
if($item_id =='sms')
{
$msg = $each_item["msg"];
$qty = 1;
}
$me = $conn->prepare("insert into books (book,item_name,quantity,msg) values (:book, :m, :p, :d)");
$me->bindParam(':book', $book);
$me->bindParam(':m', $item_id);
$me->bindParam(':p', $quantity);
$me->binParam(':d', $msg);
$me->execute();
}
echo "<div class='info_post'>YOUR SHOPPING BOOKED CODE IS ' . $book . ' KINDLY COPY TO ANY DEALER NEAR YOU TO COMFIRM<br/ ></div><form action='mail.php' method='POST'><b> Mail me:</b><br/ >
<input type='text' name='book' size='23'> <input type='submit' name='submit' value='SEND EMAIL'></form>";
unset($_SESSION["cart_array"]);
}
elseif (isset($_SESSION["user_name"]) || count($_SESSION["user_name"]) > 1) {
$username=$_SESSION["user_name"];
$records = $conn->prepare("select * from users where username= :book AND used = loading");
$records->bindParam(':book', $username);
$records->execute();
if($row = $records->fetch(PDO::FETCH_BOTH)){
$id=$row["id"];
$username=$row["username"];
$ip=$row["ip"];
$ban=$row["validated"];
$balance=$row["balance"];
if($ban != "0")
{
echo "<div class='info_post'><b>$buy $balance $ban</div>";
}
if($buy<=$balance)
{
$redut = $balance-$buy;
$go = $conn->prepare("update users set balance= :redut' where id= :id");
$go->bindParam(':redut', $redut);
$go->bindParam(':id', $id);
$go = $go->execute();
}
if($go)
{
$book=RAND(1000000, 2000000);
foreach ($_SESSION["cart_array"] as $tem) {
$m = $tem["item_id"];
$p = $tem["quantity"];
$gob = $conn->prepare("insert into books (book, item_name, quantity) values (:book, :m, :p)"); $gob->bindParam(':book', $book);
$gob->bindParam(':m', $m);
$gob->bindParam(':p', $p);
$gob = $gob->execute();
$msg = "Transation of $totalquantity products cost of $cartTotal occur on your account with ticket id $book";
$time = date('Y-m-d H:i:s');
$ty = $conn->prepare("insert into details (poster, message, date) values (:username, :msg, :time)");
$ty = bindParam(':username', $username);
$ty = bindParam(':msg', $msg);
$ty = bindParam(':time', $time);
if($gob)
{
echo "jamjamja $book";
unset($_SESSION["cart_array"]);
}
else
{
echo "nootjo";
}
}
}
}
}
?>
午前"])私のデータベースに更新されると私はなぜそれが結果を出力しない理由を把握できない新しいpdoステートメントが頼むインナー私は私たちがこの後に大丈夫だと信じています。
私のコードがレコードをデータベースに挿入するのはなぜですか?
エラー報告をオンにすると、 '$ conn = new PDO(...); 'が開始されていないことがわかります。 – ino
あなたの質問の1つに問題があります: 'used = loading'。 – Progrock
ループして複数の挿入を行っている場合は、準備済みのステートメントを再利用します。 – Progrock