PHP表单-用于注册的文件上载字段
我创建了一个PHP注册表单,供访问者填写和提交,要求他们提供基本信息 我正在努力完成以下两项任务:PHP表单-用于注册的文件上载字段,php,forms,Php,Forms,我创建了一个PHP注册表单,供访问者填写和提交,要求他们提供基本信息 我正在努力完成以下两项任务: 添加图像/文件上载字段 将它们重定向到确认页面 我一直无法使它工作。下面是我所拥有的 我的代码 HTML表单 <form name="form1" method="post" action="signup.php"> Username: <input type="text" name="user"> <br>Email: <input type=
<form name="form1" method="post" action="signup.php">
Username: <input type="text" name="user">
<br>Email: <input type="text" name="mail">
<br>Experience: <select name="exp"> <option value="beginner">Beginner</option>
<option value="intermediate">Intermediate</option> <option value="advanced">Advanced</option>
</select><br> <input type="submit" name="Submit" value="Sign Up">
</form>
用户名:
电邮:
经验:初学者
中级高级
Signup.php
<?php
$username = $_POST['user'];
$email = $_POST['mail'];
$experience = $_POST['exp'];
//the data
$data = "$username | $email | $experience\n";
//open the file and choose the mode
$fh = fopen("users.txt", "a");
fwrite($fh, $data);
//close the file
fclose($fh);
print "User Submitted";
?>
Ta添加上传您需要将enctype=“multipart/form data”添加到表单标签,然后添加上传字段。对于电子邮件字段,将类型更改为HTML5 type=“Email”,这将执行一些有效性检查,以确保其格式正确。如果一切顺利,在php文件的底部添加一个位置头。您可以将所有内容放在一个文件中,顶部有一个if语句。您还应该清理输入内容。您的HTML中似乎缺少一个输入字段。
下面是一个上传文件的表单示例
<form action="upload.php" method="post" enctype="multipart/form-data">
Select image to upload:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload Image" name="submit">
</form>
我希望这有帮助 这是一个上传文件脚本,它将遍历文件的所有数据并插入
if(isset($_POST['submit'])) {
if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
echo "<h1>" . "File ". $_FILES['filename']['name']. "uploaded successfully." . "</h1>";
}
$csv_file=$_FILES['filename']['tmp_name'];
$type=$_FILES['filename']['type'];
$handle = fopen($csv_file, "r");
$i=0;
while (($data = fgetcsv($handle)) !== FALSE) {
if($i>0) {
$import="insert into `table_name`(col1,col2,col3,col4,col5,col6,col7)values('".addslashes($data[0])."','".addslashes($data[1])."','".addslashes($data[2])."','".addslashes($data[3])."','".addslashes($data[4])."','$data[5]','$data[6]')";
mysql_query($import) or die(mysql_error());
}
$i=1;
}
echo "Success";
echo "<br>";
echo $_FILES['filename']['type'];
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="" id="">
Choose File:<br>
<input name="filename" type="file" />
<input type="submit" name="submit" value="submit" />
</form>
if(isset($\u POST['submit'])){
如果(是上传的文件($\u文件['filename']['tmp\u name'])){
echo“.”文件“$\u文件['filename']['name']”已成功上载。“”;
}
$csv_文件=$_文件['filename']['tmp_name'];
$type=$_文件['filename']['type'];
$handle=fopen($csv_文件,“r”);
$i=0;
while(($data=fgetcsv($handle))!==FALSE){
如果($i>0){
$import=“插入到`表名称'(col1,col2,col3,col4,col5,col6,col7)值('.”.addslashes($data[0])。“,'.”.addslashes($data[1])。”,'.”.addslashes($data[2]),'.addslashes($data[3]),'.addslashes($data[4]),'$data[5],'$data[6]';
mysql_query($import)或die(mysql_error());
}
$i=1;
}
呼应“成功”;
回声“
”;
echo$_文件['filename']['type'];
}
?>
我在代码中没有看到输入文件字段。可能您需要查看此问题,如果此问题回答了您的问题,请将此标记为答案,否则此问题将保持标记为“打开”。您可以通过单击答案左侧的灰色小“检查”来标记答案,当它变为绿色时,您已将其标记为答案。
if(isset($_POST['submit'])) {
if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
echo "<h1>" . "File ". $_FILES['filename']['name']. "uploaded successfully." . "</h1>";
}
$csv_file=$_FILES['filename']['tmp_name'];
$type=$_FILES['filename']['type'];
$handle = fopen($csv_file, "r");
$i=0;
while (($data = fgetcsv($handle)) !== FALSE) {
if($i>0) {
$import="insert into `table_name`(col1,col2,col3,col4,col5,col6,col7)values('".addslashes($data[0])."','".addslashes($data[1])."','".addslashes($data[2])."','".addslashes($data[3])."','".addslashes($data[4])."','$data[5]','$data[6]')";
mysql_query($import) or die(mysql_error());
}
$i=1;
}
echo "Success";
echo "<br>";
echo $_FILES['filename']['type'];
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="" id="">
Choose File:<br>
<input name="filename" type="file" />
<input type="submit" name="submit" value="submit" />
</form>