メンバーデータベースを使ってウェブサイトを作る予定です。そして、このコンセプトをサポートするアクションを実行したいと思います。コンセプトは次のとおりです。誰かが私のWebサイトにサインアップすると、PHPがそのユーザーのプロファイルURLを自動的に作成するようにします。それは可能ですか?
4 に答える
はい、可能です。次のファイルを作成して書き込むことができます。
$profileFile = "profileFile.txt";
$fh = fopen($profileFile, 'w') or die("can't open file");
$strToWrite = "Bob Dole\n";
fwrite($fh, $strToWrite);
fclose($fh);
詳細については、php.netのtizagまたはfopenを参照してください。
もちろん可能です。ただし、データベースにレコードを保持し、ユーザーごとにファイルを作成するのではなく、IDに応じてデータをロードするprofile.phpのようなファイルを使用する方がはるかに優れています。
編集:詳細。
プログラムフローは次のようになります。
- 誰かが登録できるページがあります。そのページは、データベースを使用して投稿されたデータを保存します。
- データベース内のデータは次のようになります
ID | Name | Email
1 | John | john@johnsite.com
。など。ポイントがわかります。 - おそらくURLからIDを取得するprofile.phpファイルがあります。それはを使用して行われ
$_GET
ます。
そのためのいくつかのコードは次のようになります。
$id = mysql_escape_string($_GET['id']);
$resource = mysql_query('SELECT FROM the_table WHERE ID = "'.$id.'"')
$profile = mysql_fetch_assoc($resource);
print "<h1>".$profile['Name']."'s Page!</h1>";
その結果、profile.php?id = 1のようなURLと、ジョンの
ページを表示するページが作成されます。注意:URLにIDを書き込むときは、多くのことを考慮する必要があります。最初にそれをmd5に暗号化し、SQL関数md5を使用して選択することもできます。-1、0などのIDの印刷は絶対に避け、ファイルパスを開くなどの目的でIDを使用しないようにする必要があります。
絶対。PHPのファイルシステム関数を読み通したくなるでしょう。ただし、このようなタスクにはデータベースの使用を検討する必要があります。
関数fopenを使用してphpでファイルを作成することは可能ですが、Webサイトでデータベースを使用する場合は、代わりに何らかのSQLデータベースを使用することをお勧めします(個人的にはMySQLをお勧めします)。簡単に管理できます。