0

ログインが必要なメンバー サイトがあります。メンバーは特定のユーザー定義変数を使用して Web ページを作成し、これらの Web ページへのパブリック アクセス用に表示されるデータを入力します。各ページには、特定の製品に関する情報が表示されます。

7 つの一般的な Web ページ テンプレートがあり、すべてのメンバーが自分、会社、および特定の製品 (7 つのうちの 1 つ) に関連するカスタム変数を表示するために選択します。カスタム情報をフォームに入力すると、これらの値が Web ページ テンプレートの適切な場所に配置され、後で見込み客に表示されます。

<input name='first_name' value='first_name'>
<input name='last_name' value='last_name'>
<input name='company_name' value='company_name'>
<input name='phone_number' value='phone_number'>
<input name='product_id' value='product_id'>
<input name='product_size' value='product_size'>
<input name='product_color' value='product_color'>
<input name='product_price' value='product_price'>

URL に user_id を使用して Web ページにアクセスしたときに、特定のユーザーおよびユーザーが提供する特定の製品に関連するこれらの変数の値にアクセスできる必要があります。たとえば、http://domain.com/page_template_1/user_id/ product_id .

現在、ログインしているユーザーのみがこれらの値にアクセスできます。ユーザーのカスタム値が製品情報を表示する特定の URL にアクセスするすべての人がこれらの値にアクセスできるようにする必要があります。

4

2 に答える 2

0

何らかの理由で、次のもの以外は何も機能しませんでした。私のページの残りのコードが構築される方法であった可能性があります。知らない。しかし、これが私がやったことです。$variable_name の代わりに $row->variable_name を使わなければならないのはちょっと面倒です。しかし、それは機能します。

$db_connection = new mysqli("", "", "");
if ($db_connection->connect_errno) {
   echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " .       $mysqli->connect_error;
}

$id = $_GET['user_id'];
$query = mysql_query("SELECT * FROM table_name WHERE id = '$id' LIMIT 1") or die(mysql_error()); 
$row = mysql_fetch_object($query);

echo " // HTML GOES HERE

  $row->first_name
  $row->last_name
  $row->company_name

 ";
于 2012-06-10T15:07:04.297 に答える
0

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

<?php
$db_connection = new mysqli('localhost', 'root', 'root', 'test');
if ($db_connection->connect_errno) {
   echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}


$user_id = $_GET['user_id']; // from url
$product_id = $_GET['product_id']; // from url
// Make sure $db_connection matched your database connect script! Other wise it will come up with "Fatal error: Call to a member function prepare() on a non-object" error.
if($stmt = $db_connection->prepare("SELECT first_name, last_name, company_name, phone_number, product_id, product_size, product_color, product_price FROM table_name WHERE user_id = ? AND product_id = ?")) {
        $stmt->bind_param("ii", $user_id, $product_id);
        $stmt->execute();
        $stmt->bind_result($first_name, $last_name, $company_name, $phone_number, $product_id, $product_size, $product_color, $product_price);
        $stmt->fetch();
        echo $first_name;
        $stmt->close();
}
?>

.htaccess ファイルを使用して URL を書き換えることもできます。URLをきれいにしたい場合。

お役に立てれば。

于 2012-06-08T20:58:05.013 に答える