ホームページ >バックエンド開発 >PHPチュートリアル >注文番号の価値転送とショッピング時の注文挿入に関する問題

注文番号の価値転送とショッピング時の注文挿入に関する問題

WBOY
WBOYオリジナル
2016-06-13 13:35:01890ブラウズ

ヘルプ: ショッピング時の注文番号送信と注文挿入に関する問題
SESSION に購入情報を保存し、決済ページ 1 に入るショッピングカートを作成しました
SESSION を使用して情報を表示し、配送を入力するための入力要求を出します情報
「送信」をクリックし、入力した情報をデータベースに挿入します。 生成された注文番号をページ 2 に渡します。
ページ 2 で、取得した注文番号を使用してデータベースにクエリを実行し、
を出力します。データベースに挿入する操作は、ページ 1 では実行できず、ジャンプのみになります。
番号を変更する方法については、専門家に質問するか、ヒントを得ることができます。

ページ 1 コード

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<table width="500" height="200" align="center" name="tijiaoding">
<tr><td>收货人:</td><td><input type="text" name="shouhuo"></td></tr>
<tr><td>收货地址:</td><td><input type="text" name="address"></td></tr>
<tr><td>邮编:</td><td><input type="text" name="postcode"></td></tr>
<tr><td>电话:</td><td><input type="text" name="address"></td></tr>
<?php $o_num=date('Ymdhis');    //生成订单号?>

<tr><td>
<a href="./pay.php?o_num=<?php echo $o_num ?>" name="tijiaoding"><img src="../image/tijiaoding.jpg"      name="tijiaoding"></img></a><td></td></tr>
</table>
</form>
<?php if(isset($_POST['tijiaoding'])){   
 //if($_SESSION['user'])    
//{

$user=$_SESSION['user'][1];        
    if($_POST['shouhuo']){   
 $shouhuo=$_POST['shouhuo'];  
  $address=$_POST['address'];   
 $postcode=$_POST['postcode'];    
 phone=$_POST['phone'];       
 $_SESSION['user']=array_push($_SESSION['user'],$o_num,$sum);               
     $ding="insert into ord(o_id , o_num , coun ,  u_name , u_phone , u_address , postcode , ordertime , send , pay )  values('','$o_num', '$sum','$user','$phone','$address','$postcode',NOW(),'','',)";                $in_ord=mysql_query($ding);               


if($in_ord){                 
   go("pay.php");                 
   }               
 else
echo
"订单插入失败!";          
  }            
else
echo
"请输入收货信息!";



ページ 2 コード
PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
session_start();require_once
'../db/conn.php';require_once
'../util/util.php';echo
"<pre class="brush:php;toolbar:false">";// print_r($_SESSION);// print_r($_GET);// return ;
$arr=$_SESSION["mycar"];//将session中的变量取出来
$o_num=$_GET['o_num'];foreach ($arr
as
$sk=>$sv){        
// print_r($sv);// exit;

$quer_ding="select * from ord where o_num='{$o_num}'";       
 print_r($quer_ding);exit;       
 $re_ding=mysql_query($quer_ding)or die(mysql_error());      
  // print_r($re_ding);//exit;

foreach ($re_ding
as
$k=>$v){            ?>
<tr>
<td><?php echo
$v[1];?></td><td><?php echo
$v[2];?></td><td><?php echo
$v[3];?></td>
<td><?php echo
$v[4];?></td><td><?php echo
$v[5];?></td><td><?php echo
$v[7];?></td>
<td><?php if($v[9]) echo
"已付款"; else
echo
"未付款";?></td>
</tr>
<?php }}?>



-----解決策--- -----------------
フォームが表示されませんでしたが、何を使って送信しましたか?
js の場合、少なくともコードを投稿する必要があります
------解決策----------------------
データベースへの挿入操作は実行できません1ページ目のみ ジャンプします
わかりません、go('pay.php'); ってジャンプですよね? この場合、$in_ord=mysql_query($ding); の値は true になります。挿入は成功したと言えます。
------解決策---------
入力送信ボタンが表示されない場合は、フォームデータはjiesuan.phpには送信されません。
pay.php はデータをクエリできません
------解決策---------
完了後、まず挿入ページに送信してください。ページを挿入して、pay.php に直接ジャンプするだけでは十分ではないでしょうか?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。