1

わかりましたので、誰かがこれを URL に入力するとmywebsite.com/?s1=affiliateid

affiliateidURLから一部を取り出したい。すべてのアフィリエイトは、異なるユーザー名をアドレスに入れます。

differentwebsite.com/?id=affiliateid次に、アドレスバーに入力されたユーザー名に基づいて指すリンクを作成したいと思います。

これまでのところ、アフィリエイト ID を取得するには、このようなものが必要であることがわかっています。

$aff_id = $_GET['s1'];

次に、その変数を使用してリンクを作成したり、次のページにリダイレクトしたりできます

differentwebsite.com/?id=$aff_id

私の質問は、このコードをどこに配置すればよいですか?$aff_id = $_GET['s1'];

とかいうページ作らなきゃいけ?s1.phpないの?

4

3 に答える 3

1

他の場所では使用されていないと仮定s1しますが、リンクを作成するためだけに使用されます。

<?php
  $s1 = isset($_GET['s1']) && !empty($_GET['s1'])
      ? $_GET['s1'] // it's populated, use the passed value
      : '';         // default value in case it's not present

  //
  // Maybe check $s1 is indeed valid
  //

  $newurl = sprintf('http://differentwebsite.com/?id=%s', urlencode($_GET['s1']));
?>

次に、次のように、ページのどこかにそのリンクを出力できます。

<a href="<?= $newurl; ?>">New Url Here</a>

urlencode、、、 (またはその他) のs1ような文字が含まれている場合、URL の整合性が損なわれないようにします。&=?/

簡潔なアプローチが必要な場合:

<a href="http://differentwebsite.com/?id=<?= urlencode($_GET['s1']); ?>">
  New Url Here
</a>
于 2013-01-29T02:14:20.383 に答える
0

$aff_id = $_GET['s1']使用する前にどこにでも配置できます$aff_id。私は、ページの上部にそのようなものを配置する傾向があります。

または、簡単に言えば。"differentwebsite.com/?id=$_GET['id']"

使用する前に、URL に id パラメータが存在するかどうかを確認することをお勧めします。おそらく、それが期待するデータ型、整数、文字列などであることを確認してください。ユーザーをリダイレクトするときに、壊れた方法で別の場所に送信しないようにします。

これを SQL に使用していない場合、@BlackHatShadow で SQL インジェクションが発生することはありません。

于 2013-01-29T02:11:41.730 に答える
0

mywebsite.com から取得した $aff_id を新しい Web サイトの URL に追加します。おそらく、$newurl = "differentwebsite.com/?id=".$aff_id.

編集:

?s1.php などのページを作成する必要がありますか?

ユーザーが次の URL にアクセスしたときに表示されるページを作成する必要があります: www.mywebsite.com/

PHPコードを処理できるWebサーバーを実行していると仮定します。コードは、サーバーのドキュメント ルート ディレクトリにある index.php というファイルに入れることができます。これが何かわからない場合は、特定のサーバーの「ハウツー」ガイドをグーグルで検索することをお勧めします。

URL から「s1」の値を取得し、$aff_id に保存します。

$aff_id = $_GET['s1'];

この変数を「id」パラメーターを受け入れる別の Web サイトに渡したい場合は、新しい Web URL に $aff_id を追加して、ユーザーをそこにリダイレクトするだけです。

ユーザーを differentwebsite.com にリダイレクトし、mywebsite.com からの $aff_id を別の URL に送信します。

header('Location: http://www.differentwebsite.com/?id='.$aff_id); 
于 2013-01-29T02:10:40.710 に答える