从admin.php使用时提交不工作
我有一个admin.php页面,其中包含名为programs.php的include。这包括在/includes/programs_form.php中的一个文件夹中。programs_form.php使用名为image_programs.php的操作,该操作也位于includes文件夹中。表单中的submit按钮在直接从programs_form.php调用时工作,但在从admin.php调用时不工作。我猜这与我如何调用image_programs.php有关,但我不确定。。。谢谢 HTML:从admin.php使用时提交不工作,php,html,forms,include,Php,Html,Forms,Include,我有一个admin.php页面,其中包含名为programs.php的include。这包括在/includes/programs_form.php中的一个文件夹中。programs_form.php使用名为image_programs.php的操作,该操作也位于includes文件夹中。表单中的submit按钮在直接从programs_form.php调用时工作,但在从admin.php调用时不工作。我猜这与我如何调用image_programs.php有关,但我不确定。。。谢谢 HTML:
添加程序
程序名
程序描述
PHP:
<?PHP
error_reporting(E_ALL); ini_set('display_errors', 1);
$hostname = "localhost:3306";
$db_user = "root";
$db_password = "admin";
$database = "smlc";
$db_table = "program";
$db = mysqli_connect($hostname, $db_user, $db_password);
mysqli_select_db($db, $database);
$uploadDir=dirname(__FILE__)."/images/uploaded/programs/";
if(isset($_POST['Submit']))
{
$program_name = $_POST['program_name'];
$program_description = $_POST['program_description'];
$fileName = $_FILES['Photo']['name'];
$tmpName = $_FILES['Photo']['tmp_name'];
$fileSize = $_FILES['Photo']['size'];
$fileType = $_FILES['Photo']['type'];
$filePath = $uploadDir . $fileName;
$result = move_uploaded_file($tmpName,$filePath);
if (!$result) {
echo "Error uploading file";
exit;
}
if(!get_magic_quotes_gpc())
{
$fileName = addslashes($fileName);
$filePath = addslashes($filePath);
}
$sql_program = "INSERT INTO program (program_name, program_description,filepath)
VALUES ('$program_name', '$program_description','$filePath')";
$retval = mysqli_query($db, $sql_program);
if(! $retval )
{
die('Could not update data: ');
}
echo "<script type='text/javascript'>alert('Update Successful!');</script>";
}
else
{
}
?>
原来我的标签放在我的标签里面,阻止它正确读取动作。显然,我需要更多的咖啡我在尝试将所有内容拼凑在一起时遇到了一些困难,比如与代码体相关的文件名被调用。如果它不能在另一个文件中工作,很可能是因为条件语句If(isset($\u POST['Submit'])
,但我可能错了。您需要包含“include”结构。请注意,依赖于神奇的引号和/或使用addslashes
来防止sql注入是一个非常糟糕的主意。使用准备好的语句或使用mysqli\u real\u escape\u string
对值进行转义。Include结构是:admin.php在根目录中,includes../includes/program\u form.php(action../includes/image\u programs.php在program\u form.php中调用)完全正确jeroen刚刚更改了它。
<?PHP
error_reporting(E_ALL); ini_set('display_errors', 1);
$hostname = "localhost:3306";
$db_user = "root";
$db_password = "admin";
$database = "smlc";
$db_table = "program";
$db = mysqli_connect($hostname, $db_user, $db_password);
mysqli_select_db($db, $database);
$uploadDir=dirname(__FILE__)."/images/uploaded/programs/";
if(isset($_POST['Submit']))
{
$program_name = $_POST['program_name'];
$program_description = $_POST['program_description'];
$fileName = $_FILES['Photo']['name'];
$tmpName = $_FILES['Photo']['tmp_name'];
$fileSize = $_FILES['Photo']['size'];
$fileType = $_FILES['Photo']['type'];
$filePath = $uploadDir . $fileName;
$result = move_uploaded_file($tmpName,$filePath);
if (!$result) {
echo "Error uploading file";
exit;
}
if(!get_magic_quotes_gpc())
{
$fileName = addslashes($fileName);
$filePath = addslashes($filePath);
}
$sql_program = "INSERT INTO program (program_name, program_description,filepath)
VALUES ('$program_name', '$program_description','$filePath')";
$retval = mysqli_query($db, $sql_program);
if(! $retval )
{
die('Could not update data: ');
}
echo "<script type='text/javascript'>alert('Update Successful!');</script>";
}
else
{
}
?>