Hrefタグを使用して値を渡しています
最初のページでは、Hrefタグは
echo "<a href=view_exp.php?compna=",$compname,">$compname</a>";
使用される2ページ目
$compname = $_GET['compna'];
Compnaを受け取るには、値は渡されますが、最初のWordのみが渡され、残りの単語はスキップされます。
「ChitiTechnologiesLtd」としてのCompname私が受け取る値を渡すと「Chiti」
会社名の最初の単語しか表示されない理由は、会社名に空白が含まれているためです。名前をエンコードする必要があります。
echo "<a href=view_exp.php?compna=",urlencode($compname),">$compname</a>";
パラメータを引用しないことにより、あいまいな/無効なHTMLを生成しています。結果は次のようになります。
<a href=foo bar baz>
foo
のみがhref
に属すると認識され、残りは認識されません。値を引用します:
echo '<a href="view_exp.php?compna=', urlencode($compname), '">', htmlspecialchars($compname), '</a>';
このコードを使用します:
echo '<a href="view_exp.php?compna='.urlencode($compname).'">'.$compname.'</a>';
href
に引用符を追加する必要があります。さらに、変数をエンコードするために urlencode
を使用する必要もあります。
echo '<a href="view_exp.php?compna=' . urlencode($compname) . '">' . $compname . '</a>';
エコーを変更する"<a href=view_exp.php?compna=",$compname,">$compname</a>";
エコーする"<a href=\"view_exp.php?compna=$compname\">$compname</a>";
二重引用符で囲まれた文字列を使用する場合、「間に変数を貼り付ける必要はありません。変数を入力するだけです。また、文字列を一緒に貼り付ける場合は、カンマを使用せず、。を使用して文字列を貼り付けます。そうしないと、解析エラーが発生します。配列には中括弧{}の間にそれらが含まれます
echo "<a href=\"view_exp.php?compna={$compname["whatever"]}\">$compname</a>";