ホームページ > バックエンド開発 > PHPチュートリアル > mysqlはデータソリューションをデータベースに挿入します

mysqlはデータソリューションをデータベースに挿入します

WBOY
リリース: 2016-06-13 12:03:44
オリジナル
1211 人が閲覧しました

mysql はデータベースにデータを挿入します
最終結果は失敗です
orderNo は自動的に増加する順序番号ですが、方法がわからないので、ランダムに値を割り当てました
session_start();
$corn=mysql_connect('localhost','root','');
mysql_query('set names UTF8',$corn);
if (!$corn ) {
die('接続できませんでした: ' .mysql_error());
}
$db_selected=mysql_select_db( "daydream" ,$corn);
if (!$ db_selected) {
die ('foo は使用できません : ' .mysql_error());
}
$time=date("Ymd");
echo $time;
$ id=$_GET ['id'];
$presult=mysql_query("select * fromproduction where proNo=$id");
$pinfo=mysql_fetch_array($presult);
$sum=$ _POST['proNum ']*$pinfo['proPrice'];
$num=12;
$sql="INSERT INTO order(orderNo,cusNo,orderDate,orderSum,orderAddress) VALUES ('$num' ,'$_SESSION [admin]', '$time','$sum','$_POST[orderAddress]')";
if (!mysql_query($sql,$corn))
echo "失敗";
else
echo "success";
?>
------解決策------ ---
echo "fail" を
echo mysql_error();
真実が明らかになります!

orderNo は主キーである自動インクリメントです
主キーは反復不可能です
$num の値を指定すると、違反になる可能性があります
挿入しようとしています フィールド名がリストされている場合、自動追加されたフィールドを含める必要はありません
$sql="INSERT INTO order(cusNo,orderDate,orderSum,orderAddress) VALUES ('$_SESSION[admin]' , '$time', '$sum','$_POST[orderAddress]')";
------解決策---------------- ----------------
orderNo は自動番号付けと主キーに設定する必要があります

$sql="INSERT INTO order(cusNo,orderDate, orderSum,orderAddress) VALUES ('$_SESSION[admin]', '$time', '$sum','$_POST[orderAddress]')";
echo $sql;
結果を投稿して確認してください


-----解決策 --------------------
それはあなたにとってそれほど難しいですか?私のコードをコピーするには?

`` は Tab キーの上にある文字であり、一重引用符ではありません。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート