0

を使用して、dbテーブルからページにすべてのレコードをフェッチしています。

SELECT * FROM table_name;

このページには、車の詳細の概要が表示されます。

車のリスト

ここでのアイデアは、各車の全コンテンツをロードする別のページを作成することです。問題は、どうすればいいのかわからないということです。インターネットで検索しましたが、結果が得られず、phpは初めてです。

MYSQLクエリは次のようになります。

SELECT * FROM table_name WHERE id = {$clicked-id}

ここで、クリックされたIDは、前にクリックされた車です。以前の各車のタイトルにIDを割り当てる必要があると思います。

私はかなり迷っています、誰かが私を助けてくれませんか。

4

5 に答える 5

2

PHP のマニュアルを読んでください。とても役に立ちます。

基本的に、リンクは次のようになります。

<a href="/detail.php?id=<?= $car_id ?>"> car info .. </a>

したがって、クリックされたIDをidパラメーターに渡します。

次に、詳細ページで、次のように取得します。

<?php
  $car_id = $_GET['id'];
  $query = 'SELECT * FROM cars WHERE id = '.intval($car_id);
?>

$_GETパラメータが URL に入っていたため、ここを使用しています。繰り返しになりますが、PHP のマニュアルを確認してください。この初期の作業には非常に役立ちます。

以前は、 SQL インジェクションを背中intvalから遠ざけていたことに注意してください。それが何を意味するのか分からない場合は、それについて調べる必要があります。ここでの基本的な考え方は、ユーザーが のようなものを呼び出さないようにすることです。detail.php?id=1;DROP TABLE cars;intval

SELECT * FROM cars WHERE id = 1;DROP TABLE cars;

これはあなたのデータを破壊します。

于 2012-04-04T14:12:40.707 に答える
1

リストの 2 番目の車からレンダリングされたマークアップは次のとおりです。

<table cellspacing="0" cellpadding="0" border="0">
    <tbody>
      <tr>
        <td valign="top" rowspan="3" style="padding: 8px 15px 0px 0px;"><img src=
        "car-images/2_main.jpg" class="car-list" /></td>

        <td valign="top" colspan="4">
          <h2>MG ZR</h2>
        </td>
      </tr>

      <tr>
        <td valign="top" colspan="4">3 Door Hatchback, Yellow, Petrol, Manual, Drivers
        airbag, 1 owner from new, Folding rear seats, Sports seats, Trip computer, Front
        electric windows, Alarm.service history,ABS,cd player,power steering,remote
        central locking</td>
      </tr>

      <tr>
        <td valign="bottom">
          <h4 class="car-info">Fuel</h4>Petrol
        </td>

        <td valign="bottom">
          <h4 class="car-info">Miles</h4>85000
        </td>

        <td valign="bottom">
          <h4 class="car-info">Year</h4>2006
        </td>

        <td valign="bottom">
          <h4 class="car-info">Price</h4>&Acirc;&pound;7500
        </td>
      </tr>
    </tbody>
</table>

画像をクリックして詳細を表示するとします。画像をアンカー タグで囲む必要があります。次に例を示します。

...
<a href="deatils.php?carId=2"><img src="car-images/2_main.jpg" class="car-list" /></a>
...

これは、マークアップcarId=2を生成しているコードから取得する必要があります<div id="car-list">

carId=2次に、もちろん、 details.php という名前の URL でその詳細を受け取り (私の例による)、このように解析するページが必要になります$id = $_GET['carId']$id次に、変数を使用して述べたように、データベースにクエリを実行できます。

于 2012-04-04T14:17:23.087 に答える
1

$_GETPHPで変数を調べたいとします。この「特別な」変数を使用すると、URL で渡されたパラメーターを取得できます。

これにより、次のように URL にパラメーターを渡すことができます。

http://yoursite.com/showcar.php?id=5

そして、指定idした の値を で取得できます$_GET['id']

詳細については、http ://www.php.net/manual/en/reserved.variables.get.php を参照してください。

于 2012-04-04T14:13:07.350 に答える
-1

車をクリックするとき、PHP はどの車をクリックしたかを知る必要があります。たとえば、概要ページは にありwww.example.com/carsます。すべての車に車の詳細ページへのリンクを作成します: www.example.com/viewcar?id=1. 1 はデータベース内の車の ID です。

ページではviewcar、 で id を取得できます$_GET['id']。クエリで次の値を使用します。

SELECT * FROM `cars` WHERE id = $_GET['id'];

: このソリューションは概念を示していますが、SQL インジェクションに対して非常に脆弱であるため、使用しないでください。

于 2012-04-04T14:14:19.000 に答える
-2

単純。車の「詳細ビュー」へのリンクを作成するときは、パラメーターを追加します。次に例を示します。

<a href="detailview.php?carid=12">Detail view</a>

これで、detailView.php で、このようにパラメーターを使用して SQL クエリを作成できます。

<?php
    $query = "SELECT * FROM table_name WHERE id = ".$_GET["carid"];
    ...
?>
于 2012-04-04T14:12:58.623 に答える