ホームページ > バックエンド開発 > PHPチュートリアル > 何が起こっているのか調べるのを手伝ってくれませんか?

何が起こっているのか調べるのを手伝ってくれませんか?

WBOY
リリース: 2016-06-20 12:28:56
オリジナル
905 人が閲覧しました

これは、個人のウェアハウスを作成するためのプログラムです。単独でテストすることは問題ありません。
ユーザーの個人センターがロードされると、プログラムは毎回正常に実行されます。インターフェイスが更新され、if ステートメントが実行されます。 プログラムが再度実行されます。

function _order_given(){
$uid = $this->checked_login();
$sql1="select uid from order_given where uid='$uid'" ;
$usergiven=$this->App->find($sql1);
//現在のユーザー ID が個人ウェアハウス テーブルに存在するかどうかを判断します
$row = mysql_num_rows($usergiven);
if($row==0) //個人ウェアハウス データを作成するテーブルにユーザー ID が存在しません
{
$sqlg1="order_given に挿入(goods_sn,pifa_price,is_on_sale,is_jifen) select Goods_sn,pifa_price ,is_on_sale,is_jifen from gz_goods";
$sqlg2="UPDATE order_given SET uid='$uid' WHERE uid='0'";
$this ->アプリ->クエリ($sqlg1);
>



ディスカッションへの返信 (解決策)

ソファを作って待ちます神様が通り過ぎるように!

単独のテストに問題がないのであれば、共同環境に問題があるということです。

他の場所で原因を見つけて、この機能に固執してみてはいかがでしょうか。

を追加します。 echo $sql1; // 表示したいコンテンツが文字列ではない場合があります。 実行して確認します。SQL は正しいです。チェック ユーザーが正しい uid を取得しなかった可能性があります。
このメソッドを使用すると、プログラムのどこに問題があるかをテストし、印刷されたコンテンツと予想されるコンテンツの間に違いがあるかどうかを確認できます

このステートメント:

int mysql_num_rows (resource $ result)

括弧内 パラメータはリソース ハンドルです

$usergiven=$this->App->find($sql1); このステートメントはリソース タイプを返しますか?
クラス全体、クラス内のアプリ、検索プログラムを送信するのが最善です。

更新すると、さらに 1 つのレコードが挿入されます。
問題はここにあるはずです
$sql1="select uid from order_given where uid='$uid'"
$usergiven=$this->App->find($sql1); 🎜> //現在のユーザー ID が個人ウェアハウス テーブルに存在するかどうかを判断します

$row = mysql_num_rows($usergiven);

if($row==0) //ユーザー ID が存在する場合は個人ウェアハウス データを作成しますテーブルに存在しません

$uid、$sql1、$row を出力して確認してください。

問題を解決してくれた皆さん、ありがとう

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