ホームページ > バックエンド開発 > PHPチュートリアル > 文字を含むユーザー名データの抽出中にエラーが発生しました

文字を含むユーザー名データの抽出中にエラーが発生しました

WBOY
リリース: 2016-06-23 13:22:59
オリジナル
811 人が閲覧しました

ユーザーがログインした後、次のステートメントを使用して、ログインしているユーザーのデータを抽出します。
include("IncDB.php");
$result=mysql_query("SELECT * FROM userlinks where id='a02' and userid=".$_SESSION['id']." 日時記述制限 1",$link);
$row = mysql_fetch_row($result);
echo "$row[ 1]" ;
echo"
";
echo "$row[2]";

mysql_close($link);
?>

問題は、完全にデジタル化されたときに抽出されたデータを正しく表示することです。ユーザーがログインしますが、ユーザー名に文字または漢字が含まれている場合、表示内容は空で何も表示されず、次のエラーが報告されます。 警告: mysql_fetch_row(): 指定された引数は有効な MySQL 結果リソースではありません... 。 なぜ?

私のデータベースと Web ページはすべて UTF-8 でエンコードされています。データベースにはデータがあり、空ではありません。ありがとう、気が狂いそうになる。 。 。 。


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

オールデジタルユーザーがログインすると、抽出されたデータは正しく表示されますが、ユーザー名に文字や漢字が含まれている場合、表示されたコンテンツは空で何もありません いいえ、エラーが報告されます: 警告: mysql_fetch_row(): 指定された引数は、.... の有効な MySQL 結果リソースではありません。

文字列は引用符で囲む必要があります。これは常識です。

 $result=mysql_query("SELECT * FROM userlinks where id='a02' and userid=".$_SESSION['id']." order by datetime desc limit 1",$link) or die(mysql_error());
ログイン後にコピー

$result=mysql_query("SELECT * FROM userlinks where id='a02' and userid='".$_SESSION['id']."' order by datetime desc limit 1",$link);

これはもっと分かりやすいですか?

私は本当に初心者です、許してください。よくわかりません。セッションでは一重引用符を使用する必要があるのに、私は二重引用符を使用するという違いはありますか? 。しかし、上の階で返信している人の中には二重引用符を使用している人もいます。

引用符を使用しました~~

最後にダイコードの余分な部分がありますか?

userid='aa' ここでの aa は引用符で囲む必要があります。一重引用符または二重引用符のいずれでも使用できます。

SQL をエコーし​​てみると、それが明確になります


兄弟、私の場合はもともと引用符が付いていました。
$result=mysql_query("SELECT * FROM userlinks where id='a02' and userid=".$_SESSION['id']." order by datetime desc limit 1",$link); _SESSION['id']." order

SQL コマンドの $_SESSION['id'] の値を囲む引用符はどこですか?

必要なのは、PHP 文字列を組み立てるための引用符だけです

$result = mysql_query("SELECT * FROM userlinks where id='a02' and userid='$_SESSION[id]' order by datetime desc limit 1",$link);
ログイン後にコピー


私は一目見てマスターです。これはこうあるべきなのでしょうか?
$result=mysql_query("SELECT * FROM userlinks where id='a02' and userid='".$_SESSION['id']." 'order by datetime desc limit 1",$link); を追加する必要があります。もう一重引用符は大丈夫ですよね?悪い奴だし、バカだし面倒だ。

これは私の携帯電話のフォーラムです。私も引用符を入れた記憶がありますが、機能しないようです。

xuzuning さんと jordan102 さん、ありがとう! !もし解けたらお二人に30点あげてもよろしいでしょうか?

userid='".$_SESSION['id']." 'order これは機能しません

userid='".$_SESSION['id']."' が必要です

そうしないと追加のものが発生しますスペースがあり、もう一度確認する必要があります。十分ではありません

皆さんに 30 ポイントあげてもいいですか? いいえ、投稿にポイントを追加しない限り!

はい、わかりました。戻ってテストして解けば確実に加点が得られます。ありがとうございます

$result=mysql_query("SELECT * FROM userlinks where id='a02' and userid=".$_SESSION['id']." order by datetime desc limit 1",$link);

$result=mysql_query("SELECT * FROM userlinks where id='a02' and userid= '".$_SESSION['id']." ' order by datetime desc limit 1",$link); xuzuning と jordan102 と fdipzone は解決されました。ありがとう!

利用可能なポイントが 10 ポイントしかないのはなぜですか? 10点しか加点できないようなので、xuzuningとjordan102に20点ずつあげます。足りなければ次回で補いましょう。

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