データベースにデータを送信するフォームがあり、特定のデータを取得して Web ページに表示する URL の末尾にランダムな ID を持つ電子メール アドレスに電子メールを送信する Web サイトがあります。基本的に私がやっているバレンタインメッセージタイプのものです
データがデータベースに送信され、完全に保存されていることはわかっていますが、奇妙な理由でデータのプルに問題があります。
これが私のコードです。問題を引き起こしている可能性があるものはありますか?
<?php
// since the id is being passed in the url, you will need to declare it using the get method
$rand = $_GET['rand'];
$action = $_GET['action'];
// if an id was sent to the script, then execute it
if ($rand)
{
// connection vars
$host = "localhost";
$user = "***";
$password = "***";
$dbname = "***";
$tablename = "cards";
$mysql = new mysqli('$host, $user, $password');
$result = $mysql->query('SELECT * FROM $tablename WHERE rand = $rand');
while (($row = $result->fetch_assoc()) !== null) {
print_r($row);
$youremail = urlencode($row['youremail']);
$name = urlencode($row['name']);
$receiveremail = urlencode($row['receiveremail']);
$message = $row['message'];
// replace non flash line breaks with the flash \r newline
$message = str_replace('\n', '\r', $message);
$message = str_replace('\r\n', '\r', $message);
$message = str_replace('<br>', '\r', $message);
$message = str_replace('%0D%0A', '\r', $message);
}
// if there was a result echo the stuff below
if($result)
{
// if we have a result we can show the movie and pass the vars along in the strings
// a set back with this is that you can only pass so much data in the string, think its like 256 characters, but Im not sure.
echo "Hello, $name <br />";
echo "$message";
exit();
}
mysql_close();
}
?>