What's new

Closed Mga sir patulong nman... ayaw mag upload ng file

Status
Not open for further replies.

don2x8

Addict
Joined
Mar 15, 2017
Posts
26
Reaction
6
Points
77
Age
32
di ko po alam kung saan ako nag kamali... basta ang output lagi.. pag tapos ko mag register, ang sinasabi....

This file has to be a jpeg, jpg or bmp!

kahit bmp nman yung inupload ko...

tinry ko gawing if (true) yung (($type=="image/jpg") || ($type=="image/bmp") || ($type=="image/jpeg"))

pero yung file parang wala.... walang laman yung images folder na dapat paglagyan nya....

eto yung codes.... dalawang file yan


dito ko manggagaling...
-- form.php --
<html>
<head>
<title>testsite</title>
</head>
<body>
<h3>Register From</h3>
<br />
<form enctype="multipart/form-data" method="post" action="insert.php">
<table>
<tr>
<td align="right">Name:</td>
<td><input type="text" name="name" maxlength="30" /></td>
</tr>
<tr>
<td align="right">Email:</td>
<td><input type="text" name="email" maxlength="30" /></td>
</tr>
<tr>
<td align="right">Password:</td>
<td><input type="password" name="password" maxlength="15" /></td>
</tr>
<tr>
<td align="right">Confirm Password:</td>
<td><input type="password" name="cpassword" maxlength="15" /></td>
</tr>
<input type="hidden" name="MAX_FILE_SIZE" value="10000" />
</table>
<br />
Choose your picture: <input type="file" name="upload" />
<br />
<input type="submit" name="submit" value="register" />
</form>
<br />
</body>
</html>

tapos d2 ako maredirect...
--insert.php--
<?php

$mypic = $_FILES['upload']['name'];
$temp = $_FILES['upload']['tmp_name'];
$type = $_FILES['upload']['type'];

$name = $_POST['name'];
$email = $_POST['email'];
$password = $_POST['password'];
$cpassword = $_POST['cpassword'];

if ($name && $email && $password && $cpassword) {


$con = mysqli_connect("localhost", "root") or die("Problem with connection...");
mysqli_select_db($con, "testsite");

$username = mysqli_query($con, "SELECT * FROM users WHERE name='$name'");
$rname = mysqli_num_rows($username);
$checkemail = mysqli_query($con, "SELECT * FROM users WHERE email='$email'");
$remail = mysqli_num_rows($checkemail);

if ($rname) {

echo "Username already exists! Please type another name.";

} elseif ($remail){

echo "E-mail already exists! Please type another e-mail.";

} elseif (!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)) {

echo "Please enter a valid E-mail!";

} elseif ($password !== $cpassword) {

echo "Passwords you entered should match!";

} elseif (strlen($password) < 4 ){

echo "Password should be 4 to 15 characters long.";

} else {

if (($type == "image/jpg") || ($type == "image/bmp") || ($type == "image/jpeg")) {

move_uploaded_file($temp, "images/$mypic");
echo "What a pretty face!<br /><img border='1' width='70' height='70' src='images/$mypic' /><br />";
$passwordmd5 = md5($password);
mysqli_query($con, "INSERT INTO users(name, email, password) VALUES('$name', '$email', '$passwordmd5')");
$registered = mysqli_affected_rows($con);

echo "$registered was inserted";

} else {

echo "This file has to be a jpeg, jpg or bmp!";

}
}

mysqli_close($con);

} else {

echo "you have to complete the form!";

}

?>

parang di gumagana yung move_uploaded_file() na function...
or baka nman yung <form> yung di gumagana...
 
gumagana naman yung code dun sa tutorial na pinapanood ko... pero 2012 pa yung tutorial na yun... hindi kaya may nag bago na??? tulad ng mysql_connect()... pinalitan na ng mysqli_connect()
 
gumagana naman yung code dun sa tutorial na pinapanood ko... pero 2012 pa yung tutorial na yun... hindi kaya may nag bago na??? tulad ng mysql_connect()... pinalitan na ng mysqli_connect()
ano ba value nag image mo sa mysql mo? try mo syang gawin string imbis na blob or img. tpos ang gwin mo pa upload ay yung pinak file name nya na example image.jpg tatangapin yan ng mysql at ma view mo pa sya. gets mo ba?
 
Di yata recommended yung $_FILES["upload"]["type"]. Try getting the extension using $imageFileType = pathinfo($_FILES["upload"]["name"],PATHINFO_EXTENSION); Tapos yan yung lagay mo sa conditional statement mo. And also lagyan mo rin ng condition yung move_uploaded_file, para pag nag fail eh may lalabas na error, kasi ang nangyayari dyan sa condition mo, di namemeet yung $type = "" ... so yung nasa else yung lalabas, edi iassume mo na na may mali sa condition mo. Try this:
PHP:
if ($imageFileType == "jpg" || $imageFileType == "png") {
    if(move_uploaded_file($_FILES["upload"]["tmp_name"], "image/" . basename($_FILES["upload"]["name"]) {
         echo "Success";
   } else {
        echo "Error";
   }
}
 
oo nga sir mrkmrk.. yung $type walang laman.... dun pala sa <input type='hidden' name='MAX_FILE_SIZE' value='10000'> ang problema.... tinaasan ko yung value ng value, tapos gumana na sya... inaupload na nya yung file... haha dapat pala nilagyan ko din ng condition yung $type kung may laman... para masabi kung may na upload na file.. haha ty po sa help...
 
Status
Not open for further replies.

Similar threads

Back
Top