をホスティングしているオンライン上の作品ではありません。PHPフォームローカルホスト上のコードを認識することが、私は<a href="http://www.html-form-guide.com/php-form/php-form-processing.html" rel="nofollow">php form guide site</a></p> <p>からダウンロードこのPHPのフォーム処理コードはコードは私のホスティングスペース上の任意のエラーが発生することなく完璧に動作してい
xampp localhostで実行しようとすると、フィールドが認識されません。このエラーが表示されます:
Notice: Undefined variable: varMovie in C:\wamp64\www\form\myform2.php on line 88 Call Stack #TimeMemoryFunctionLocation 10.0007248808{main}()...\myform2.php:0
誰でも私を助けることができますか?私はPHPコードを貼り付けています:
<?php
if (isset($_POST['formSubmit']) && $_POST['formSubmit'] == 'Submit')
{
$errorMessage = "";
if(empty($_POST['formMovie']))
{
$errorMessage .= "<li>You forgot to enter a movie!</li>";
}
if(empty($_POST['formName']))
{
$errorMessage .= "<li>You forgot to enter a name!</li>";
}
if(empty($_POST['formGender']))
{
$errorMessage .= "<li>You forgot to select your Gender!</li>";
}
$varMovie = $_POST['formMovie'];
$varName = $_POST['formName'];
$varGender = $_POST['formGender'];
if(empty($errorMessage))
{
$db = mysql_connect("loclhost","root","admin");
if(!$db) die("Error connecting to MySQL database.");
mysql_select_db("my_db" ,$db);
$sql = "INSERT INTO movieformdata (moviename, yourname, Gender) VALUES (".
PrepSQL($varMovie) . ", " .
PrepSQL($varName) . ", " .
PrepSQL($varGender) . ")";
mysql_query($sql);
header("Location: thankyou.html");
exit();
}
}
// function: PrepSQL()
// use stripslashes and mysql_real_escape_string PHP functions
// to sanitize a string for use in an SQL query
//
// also puts single quotes around the string
//
function PrepSQL($value)
{
// Stripslashes
if(get_magic_quotes_gpc())
{
$value = stripslashes($value);
}
// Quote
$value = "'" . mysql_real_escape_string($value) . "'";
return($value);
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>PHP Form processing example</title>
<!-- define some style elements-->
<style>
label, a {
font-family : Arial, Helvetica, sans-serif;
font-size : 12px;
}
</style>
</head>
<body>
<?php
if(!empty($errorMessage))
{
echo("<p>There was an error with your form:</p>\n");
echo("<ul>" . $errorMessage . "</ul>\n");
}
?>
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post">
<p>
<label for='formMovie'>Which is your favorite movie?</label>
<br/>
<input type="text" name="formMovie" maxlength="50" value="<?=$varMovie;?>" />
</p>
<p>
<label for='formName'>What is your name?</label>
<br/>
<input type="text" name="formName" maxlength="50" value="<?=$varName;?>" />
</p>
<p>
<label for='formGender'>What is your Gender?</label>
<br/>
<select name="formGender">
<option value="">Select...</option>
<option value="M"<? if($varGender=="M") echo(" selected=\"selected\"");?>>Male</option>
<option value="F"<? if($varGender=="F") echo(" selected=\"selected\"");?>>Female</option>
</select>
</p>
<input type="submit" name="formSubmit" value="Submit" />
</form>
<p> <a href='http://www.html-form-guide.com/php-form/php-form-processing.html'
>'PHP form processing' article page</a> </p>
</body>
</html>
localhostとprodサーバーの両方のPHPバージョンは同じですか? –
はい。 PHP 5.5で動く – Malik
両方のロードされた拡張機能はどうですか?両方で 'phpinfo()'をチェックしますか? prodサーバーでエラーを有効にすることができますか? –