0

ここで説明するように、AJAX 呼び出しの URL を生成しています。(この投稿を見てください。実際を理解するために必要です)。

一部の URL には特殊文字が含まれているため、次のようになります。

http://myweb.com/ni%C3%B1o/pull%26bear/jacket%20shirt%20pants%20underwear%20hat/23

そして、いくつかの文字を削除し、3 番目のパラメーターを最大 3 語だけに制限して、わかりやすい URL を作成したいと考えています。結果は次のようになります。

http://myweb.com/nino/pullbear/jacket-shirt-pants/23

そのため、php は私が渡したパラメータを知ることができます。きれいな URL 変換を使用して、VARCHARごとに新しい列をデータベースに追加しました。私は次のように説明します。

ID  SEX   SEX_PRETTY  BAND       BRAND_PRETTY  DESCRIPTION                       DESCRIPTION_PRETTY   AGE
1   NIÑO  NINO        PULL&BEAR  PULLBEAR      JACKET SHIRT PANTS UNDERWEAR HAT  JACKET-SHIRT-PANTS   10
2   NIÑA  NINA        ZARA       ZARA          JEANS BIKINI DRESS SWEATER        JEANS-BIKINI-DRESS   13

AJAX は php を呼び出し、php では、データベース内でかなりの列から通常の列への変換を行います。

これが私がやりたいことをする唯一の方法だと思いますね。ヘルプやアドバイスをいただければ幸いです。さらに情報が必要な場合はお知らせください。投稿を編集します。

4

1 に答える 1

2

あなたがしていることは正しいです。URL の値は単なるパラメーターであるため、それらを使用してデータベースから行を選択できます。URLを解析すると、http://myweb.com/nino/pullbear/jacket-shirt-pants/23次のようなものが返されます

<?
$sex = 'nino';
$brand = 'pullbear';
$description = 'jacket-shirt-pants';
$age = '23';
?>

次に、その情報を使用して、データベースから何かを選択できます。簡単にするために、クエリを連結しますが、検証を行うか、パラメーター化されたクエリを使用するようにしてください。

<?
//WARNING: POSSIBLE UNSAFE EXAMPLE, DONT USE DIRECTLY IN PRODUCTION

$query = "SELECT * FROM Table WHERE SEX_PRETTY='$sex' AND BRAND_PRETTY='$brand' AND DESCRIPTION_PRETTY='$description' AND AGE='$age'";

//now in your results you can use the `SEX`, `BRAND` and `DESCRIPION` columns to show information
?>

1 つの製品を一意に識別したい場合は、 、、ANDUNIQUE INDEXを組み合わせた列にを作成するのが最善であることに注意してください。SEX_PRETTYBRAND_PRETTYDESCRIPTION_PRETTYAGE

また、JSON の使用について話しているので、すべての特殊文字が許可されているわけではないことに注意してください。そのため、出力でそれらをエンコードする必要がある場合があります。json-character-encoding を確認してください

于 2013-05-28T07:35:05.620 に答える