如何使图片只上传php
你好,我想问一些关于我的代码,我想过滤上传的文件只是图像,这个代码是工作,但当我上传一部电影,它不断上传,并没有执行我的条件,任何人都可以修复它?谢谢如何使图片只上传php,php,Php,你好,我想问一些关于我的代码,我想过滤上传的文件只是图像,这个代码是工作,但当我上传一部电影,它不断上传,并没有执行我的条件,任何人都可以修复它?谢谢 <?php include "connect.php"; $username = $_POST['username']; $fullname = $_POST['fullname']; $phone =$_POST['phone']; $email = $_POST['email'];
<?php
include "connect.php";
$username = $_POST['username'];
$fullname = $_POST['fullname'];
$phone =$_POST['phone'];
$email = $_POST['email'];
$password = $_POST['password'];
$encryptPassword = md5($password);
$sex = $_POST['sex'];
$pict = $_FILES['pict']['name'];
$tmp = $_FILES['pict']['tmp_name'];
$newpict = date('dmYHis').$pict;
// Set path folder tempat menyimpan fotonya
$path = "../../CRUD/user/images/".$newpict;
$foto_size = $_FILES["pict"]["size"];
$info = getimagesize($tmp);
if ($info === FALSE) {?>
<script language="javascript">alert("Sign Up Failed");</script>
<script>document.location.href='daftar.php';</script><?php
}
if (($info[2] !== IMAGETYPE_GIF) && ($info[2] !== IMAGETYPE_JPEG) && ($info[2] !== IMAGETYPE_PNG) ) {?>
<script language="javascript">alert("Sign Up Failed");</script>
<script>document.location.href='daftar.php';</script>
<?php
}
else{
if($foto_size < 1000000 && (strlen(trim($password))>=8)){
if(move_uploaded_file($tmp, $path)){
$sql_buat = "INSERT INTO user(id_user, username, fullname, email,phone, password, sex,user_picture) VALUE('','$username','$fullname','$email','$phone','$encryptPassword','$sex','$newpict')";
if(isset($_POST['username'])&&($_POST['email']))
{
$name=$_POST['username'];
$email=$_POST['email'];
$checkdata=" SELECT * FROM user WHERE email='$email' and username='$name' ";
$query=mysqli_query($conn,$checkdata);
if(mysqli_num_rows($query)>0)
{?>
<script language="javascript">alert("Username and Email Already Exist");</script>
<script>document.location.href='daftar.php';</script><?php
}
}
if(isset($_POST['username']))
{
$name=$_POST['username'];
$checkdata=" SELECT username FROM user WHERE username='$name' ";
$query=mysqli_query($conn,$checkdata);
if(mysqli_num_rows($query)>0)
{?>
<script language="javascript">alert("Username Already Exist");</script>
<script>document.location.href='daftar.php';</script><?php
}
/*else
{
echo "OK";
}
exit();
}*/
}
if(isset($_POST['email']))
{
$email=$_POST['email'];
$checkdata=" SELECT email FROM user WHERE email='$email' ";
$query=mysqli_query($conn,$checkdata);
if(mysqli_num_rows($query)>0)
{?>
<script language="javascript">alert("Email Already Exist");</script>
<script>document.location.href='daftar.php';</script><?php
}
/*else
{
echo "OK";
}
exit();
*/
}
if (mysqli_query($conn, $sql_buat)){
?>
<script language="javascript">alert("Sign up Successful");</script>
<script>document.location.href='../login/login.php';</script>
<?php
}
else{
?>
<script language="javascript">alert("Sign up failed");</script>
<script>document.location.href='daftar.php';</script>
<?php
}
mysqli_close($conn);
}
else{
echo "Sorry picture cant upload.";
echo "<br><a href='inputitems.php'>Back to Form</a>";
}
}
else{?>
<script language="javascript">alert("Sign up failed");</script>
<script>document.location.href='daftar.php';</script><?php
}
}
mysqli_close($conn);
?>
警报(“注册失败”);
document.location.href='daftar.php';
警报(“注册失败”);
document.location.href='daftar.php';
关于HTML5的使用
<input type="file" name="myImage" accept="image/x-png,image/gif,image/jpeg" />
这就是总体思路。您正在检查它是否是PHP上的图像。PHP只能在上传后进行。在用javascript发送表单之前做一些检查。您可以检查这个问题以获得建议:md5不适合哈希密码。使用“它一直在上传”-这到底意味着什么?您还应该使用带有绑定参数的准备语句。您的脚本容易受到SQL注入攻击。
$ext_array = array("jpg", "gif", "png");
$type = $_FILE['type'];
$temp = explode(".", $_FILE["name"]);
if(stristr($type, 'image') && in_array(end($temp), $ext_array)){
move_uploaded_file($_FILE["tmp_name"], 'upload/' . 'newname.jpg')
}