|
|
|
รบกวนนิดนึงครับติดปัญหา คือ ผมทำ เว็บ php เป็นการ upload file PDF ใช้ database phpmyadmin แต่เมื่อทำการ upload file ที่มากกว่า 1M ไม่สามารถ up เข้าไปได้ |
|
|
|
|
|
|
|
ลองเอาโค๊ดหน้าอัพโหลดมาดูครับ
ลองในเครื่องผมอัพได้เป็น GB
|
|
|
|
|
Date :
2012-06-12 11:01:44 |
By :
randOmizE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เพิ่มเติมอีกนิดครับ
เรื่องของ การแจ้ง ERROR ไม่มีน่ะครับ เพราะ ตอนนี้ผมลองใช้งานจริงแล้ว มันติดปัญหา แค่ upload ได้ไม่เกิน 1 m
|
|
|
|
|
Date :
2012-06-12 11:02:51 |
By :
vipclubzaa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?
session_start();
if($_SESSION["var1"]!= "")
{
echo "Welcome".$_SESSION["var1"];
}else
{
header( 'Location: http://localhost/project/board_meeting55/meetboard55admin.html' ) ;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>cm2555upload</title>
<link rel="stylesheet" href="../css/style.css" />
</head>
<body>
<?php
@mysql_connect("localhost", "root", "password") or die(mysql_error());
mysql_select_db("mofintranet");
if($_FILES) {
$num_files = count($_FILES['file']['name']);
for($i = 0; $i < $num_files; $i++) {
if($_FILES['file']['error'][$i] != 0) {
continue;
}
$upfile = $_FILES['file']['tmp_name'][$i];
$file = fopen($upfile, "r");
$content = fread($file, filesize($upfile));
$content = addslashes($content);
fclose($file);
$size = $_FILES['file']['size'][$i];
$name = $_FILES['file']['name'][$i];
$type = $_FILES['file']['type'][$i];
$topic = $_POST['topic'];
$sql = "INSERT INTO board_meeting55 VALUES(0, '<<ดูรายงาน>>','$topic', '$type', '$size', '$content');";
$qry = mysql_query($sql);
if(!$qry) {
echo "การบันทึกไฟล์ลำดับที่ " . ($i + 1) . " เกิดข้อผิดพลาด! <br />";
}
else {
echo "การบันทึกไฟล์ลำดับที่ " . ($i + 1) . " เสร็จเรียบร้อย <br />";
}
}
}
?>
<p />
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">
<label>
หัวข้อเรื่อง::
<textarea name="topic" cols="30" rows="5"></textarea>
<br />
<br />
File Uplaod::
<input name="file[]" type="file" id="file[]" />
<br />
<br />
<input type="submit" name="Submit" value="Upload" />
<br />
<br />
</label>
<H2> <a href="meetboard55showuser.php">>>>>>>ย้อนกลับหน้าหลัก<<<<<</a></H2>
</form><p />
<?php
$result = mysql_query("SELECT * FROM board_meeting55 ORDER BY id DESC;");
if(!$result || mysql_num_rows($result) == 0) {
echo "ไม่พบไฟล์ในฐานข้อมูล </body></html>";
exit();
}
echo "<table border=1 cellpadding=5 cellspacing=1>
<caption>รายชื่อไฟล์ที่เก็บไว้ในฐานข้อมูล</caption>";
echo "</tr>";
$num_fields = mysql_num_fields($result);
for($i = 0; $i < $num_fields - 2; $i++) {
echo "<th>" . mysql_field_name($result, $i) . "</th>";
}
echo "</tr>";
while($data = mysql_fetch_array($result)) {
echo "<tr valign=top>";
$id = $data[0];
for($i = 0; $i < $num_fields - 2; $i++) {
echo "<td>";
if($i == 1) {
echo "<a href=\"meetboard55show_file.php?id=$id\" target=\"_blank\">{$data[$i]}</a>";
}
else {
echo $data[$i];
}
echo "</td>";
}
echo "</tr>";
}
echo "</table>";
?>
</body>
</html>
หน้า upload ครับ
|
|
|
|
|
Date :
2012-06-12 11:20:14 |
By :
vipclubzaa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองแปะที่หัวไฟล์
Code (PHP)
<?php
ini_set("memory_limi M","200M");
ini_set('upload_max_filesize', '200M');
ini_set('post_max_size', '200M');
?>
|
|
|
|
|
Date :
2012-06-12 11:28:48 |
By :
randOmizE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองทำการแปะ แล้วครับ ดังด้านล่างนี้ครับ ยังไม่ได้ครับ และะก็ไม่ขึ้น ERROR ให้ดูด้วยน่ะครับ มึนเลย รบกวนอีกครั้งนะครับ
Code (PHP)
<?php
ini_set("memory_limi M","200M");
ini_set('upload_max_filesize', '200M');
ini_set('post_max_size', '200M');
?>
<?
session_start();
if($_SESSION["var1"]!= "")
{
echo "Welcome".$_SESSION["var1"];
}else
{
header( 'Location: http://localhost/project/board_meeting55/meetboard55admin.html' ) ;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>cm2555upload</title>
<link rel="stylesheet" href="../css/style.css" />
</head>
|
|
|
|
|
Date :
2012-06-12 11:35:48 |
By :
vipclubzaa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ๋อ
Code (PHP)
$upfile = $_FILES['file']['tmp_name'][$i];
$file = fopen($upfile, "r");
$content = fread($file, filesize($upfile));
$content = addslashes($content);
fclose($file);
จะเปิดอ่านข้อมูลในไฟล์ pdf แล้วบันทึกลงฐานข้อมูลหรอครับ ไม่ใช่อัพโหลดไฟล์ pdf นี่นา กรณีแบบนี้ ไม่แน่ใจว่าทำได้หรือเปล่า รอท่านต่อไปครับ
|
|
|
|
|
Date :
2012-06-12 11:50:26 |
By :
randOmizE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เก็บแบบนี้มันเปลือง Memory อย่างมากน่ะครับ ใช้การเก็บชื่อไฟล์ก็พอ
|
|
|
|
|
Date :
2012-06-12 11:53:09 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองทำการ ปรับ เครื่องของตัวเองนะครับ เข้าไป C windows/ php.ini
PHP.INI
ตอนนี้ผมเปลี่ยนเป็น 200 M หมดแล้วครับ
upload_max_filesize เป็น 200 M
และ post_max_size เป็น 200M
และทำการ stop start Apache แล้ว ครับ มันก็ยังไม่ได้เหมือนเดิมนะครับ
PHP myadmin ผม V.phpMyAdmin - 2.10.3 ไม่ทราบเกี่ยวหรือไม่น่ะครับ
|
|
|
|
|
Date :
2012-06-12 11:54:53 |
By :
vipclubzaa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณลองดู
Code (PHP)
<?
phpinfo();
?>
มันอัพโหลดได้กี่ M ครับ
|
|
|
|
|
Date :
2012-06-12 11:56:59 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เรียนตามตรงนะครับ พี่ๆ คือ ผมมาต่ อยอด จากคนเดิม ที่เขาทำไว้นะครับ
ผมเลยมีความจำเป็น ต้องทำแบบ นี้ไปก่อนนะครับ
เรื่องเครียดแล้วครับ 5555 งงไปไหม ครับ
|
|
|
|
|
Date :
2012-06-12 11:57:38 |
By :
vipclubzaa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองใช้ file_get_contents() แทน fopen ผมลองแล้วมันเอาข้อมูล pdf มาแสดงได้
ตามนี้
Code (PHP)
<?
session_start();
if($_SESSION["var1"]!= "")
{
echo "Welcome".$_SESSION["var1"];
}else
{
header( 'Location: http://localhost/project/board_meeting55/meetboard55admin.html' ) ;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>cm2555upload</title>
<link rel="stylesheet" href="../css/style.css" />
</head>
<body>
<?php
@mysql_connect("localhost", "root", "password") or die(mysql_error());
mysql_select_db("mofintranet");
if($_FILES) {
$num_files = count($_FILES['file']['name']);
for($i = 0; $i < $num_files; $i++) {
if($_FILES['file']['error'][$i] != 0) {
continue;
}
$upfile = $_FILES['file']['tmp_name'][$i];
$content = htmlspecialchars(file_get_contents($upfile));
$size = $_FILES['file']['size'][$i];
$name = $_FILES['file']['name'][$i];
$type = $_FILES['file']['type'][$i];
$topic = $_POST['topic'];
$sql = "INSERT INTO board_meeting55 VALUES(0, '<<ดูรายงาน>>','$topic', '$type', '$size', '$content');";
$qry = mysql_query($sql);
if(!$qry) {
echo "การบันทึกไฟล์ลำดับที่ " . ($i + 1) . " เกิดข้อผิดพลาด! <br />";
}
else {
echo "การบันทึกไฟล์ลำดับที่ " . ($i + 1) . " เสร็จเรียบร้อย <br />";
}
}
}
?>
<p />
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">
<label>
หัวข้อเรื่อง::
<textarea name="topic" cols="30" rows="5"></textarea>
<br />
<br />
File Uplaod::
<input name="file[]" type="file" id="file[]" />
<br />
<br />
<input type="submit" name="Submit" value="Upload" />
<br />
<br />
</label>
<H2> <a href="meetboard55showuser.php">>>>>>>ย้อนกลับหน้าหลัก<<<<<</a></H2>
</form><p />
<?php
$result = mysql_query("SELECT * FROM board_meeting55 ORDER BY id DESC;");
if(!$result || mysql_num_rows($result) == 0) {
echo "ไม่พบไฟล์ในฐานข้อมูล </body></html>";
exit();
}
echo "<table border=1 cellpadding=5 cellspacing=1>
<caption>รายชื่อไฟล์ที่เก็บไว้ในฐานข้อมูล</caption>";
echo "</tr>";
$num_fields = mysql_num_fields($result);
for($i = 0; $i < $num_fields - 2; $i++) {
echo "<th>" . mysql_field_name($result, $i) . "</th>";
}
echo "</tr>";
while($data = mysql_fetch_array($result)) {
echo "<tr valign=top>";
$id = $data[0];
for($i = 0; $i < $num_fields - 2; $i++) {
echo "<td>";
if($i == 1) {
echo "<a href=\"meetboard55show_file.php?id=$id\" target=\"_blank\">{$data[$i]}</a>";
}
else {
echo $data[$i];
}
echo "</td>";
}
echo "</tr>";
}
echo "</table>";
?>
</body>
</html>
|
|
|
|
|
Date :
2012-06-12 12:05:58 |
By :
randOmizE |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เรียน K . random ปัญหาไม่ได้อยู่ตอนที่มันเปิดงาน น่ะครับ คือ ปัญหา ตอนที่ นำเอา file pdf ที่มี ขนาดมากกว่า 1 M เข้าไปเก็บ ใน data base ไม่ได้น่ะครับ
แต่โค๊ด ด้าน บนผมลองนำไปใส่แล้วนะครับ ก็ยังเป็นปัญหา เดิมอยู่น่ะครับ
|
|
|
|
|
Date :
2012-06-12 13:25:00 |
By :
vipclubzaa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แสดงว่าอัพไฟล์ได้ แต่ขนาดของ Field Database ไม่พอเก็บ?
Type ของ Field ที่เก็บ $content คืออะไรครับ Text หรือเปล่า ลองแก้เป็น Long Text ดูได้ไหม
|
|
|
|
|
Date :
2012-06-12 13:43:53 |
By :
katwalks |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมใช้ swfupload ช่วยในฟอร์มอัปโหลดวีดีโอให้ลูกค้า
อัปโหลดได้ 8 กิ๊กสบาย ๆ เลยนะครับ
ลองเอามาประยุกต์ดูนะครับ
|
|
|
|
|
Date :
2012-06-12 14:36:18 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตามที่ k. katwalks ว่าเนี่ย database ที่เก็บ content กำนหด เป็น longbob แล้ว กำหนดเป็น binary ครับ
|
|
|
|
|
Date :
2012-06-12 16:10:43 |
By :
vipclubzaa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าเป็นปัญหาตอนเอาใส่ database ลองเปลี่ยนตรงนี้
$qry = mysql_query($sql);
เป็น
$qry = mysql_query($sql) or die(mysql_error());
ดูสิว่ามันจะฟ้องไรหรือป่าว
|
|
|
|
|
Date :
2012-06-12 17:17:51 |
By :
naskw |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|