ホームページ > バックエンド開発 > PHPチュートリアル > 写真をダウンロードし、MYSQL にパスを記録するためのコードを修正してください。

写真をダウンロードし、MYSQL にパスを記録するためのコードを修正してください。

WBOY
リリース: 2016-06-13 13:24:07
オリジナル
681 人が閲覧しました

画像をアップロードし、MYSQL にパスを記録するコードを修正してください。
画像を 1 つだけアップロードする機能は実装されていますが、2 つの画像をアップロードすることはできません。コード部分は比較的単純です。アドバイスをお願いします。

写真をアップロードするフォーム:

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php
if ( isset($_GET['action']) && $_GET['action'] == "save" )
{
include_once('conn.php');  //连接数据库
include_once('uploadclass.php');//这个文件在下文会给出

$pic=$uploadfile;   //第一张图片,已经可以正常上传
$pic2=$uploadfile2; //第二张,上传不了

$sql="insert into product (pic,pic2) values ('$pic','$pic2')";
$result=mysql_query($sql,$conn);
if   (!$result)
{
      echo mysql_error();
      echo $sql;
      exit;
}
else
{
      echo"<Script>window.alert('congratulations,the product data inserted successful');location.href='index.php'</Script>";
} 

mysql_close();
}

?>
<!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>Administrator for upload the product resource</title>
</head>
<body>

<form method="post" action="?action=save" enctype="multipart/form-data" >

Images_1:
         <input name="file" type="file" value="Browse" />
         <input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
         <br />
Images_2: 
         <input name="file2" type="file" value="Browse" />
         <input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
        <p />
        
      <input type="submit" value="upload this resource" name="upload" />

</form>
</body>
</html>

ログイン後にコピー


アップロード プログラム: Uploadclass.php (このプログラムは写真 1 のみをアップロードできます。画像 2 をアップロードできるようにするにはどうすればよいですか?)
PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->

<?php
$uploaddir = "../images/upfiles/";
$type=array("jpg","gif","bmp","jpeg","png");
$patch="aloesky/";

function fileext($filename)
{
return substr(strrchr($filename, '.'), 1);
}

function random($length)
{
$hash = 'CR-';
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
$max = strlen($chars) - 1;
mt_srand((double)microtime() * 1000000);
for($i = 0; $i < $length; $i++)
{
$hash .= $chars[mt_rand(0, $max)];
}
return $hash;
}

$a=strtolower(fileext($_FILES['file']['name']));
if(!in_array(strtolower(fileext($_FILES['file']['name'])),$type))
{
$text=implode(",",$type);
echo "You can only upload the following types of files:",$text,"<br /> <a href='upload_pro.php'>return and try again?click me</a>";
exit;
}
else{
$filename=explode(".",$_FILES['file']['name']);
do
{
$filename[0]=random(10); 
$name=implode(".",$filename);
//$name1=$name.".Mcncc";
$uploadfile=$uploaddir.$name;
}

while(file_exists($uploadfile));

if (move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile))
{
if(is_uploaded_file($_FILES['file']['tmp_name']))
{

echo "the Images Upload failed!";
}
else
{
echo "<center>Your file has been uploaded: </center><br><center><img src='$uploadfile' /></center>";
echo "<br><center><a href='upload_pro.php'>Continue to upload</a></center>";
}
}
}
?>

ログイン後にコピー



-----解決策- ------- ------------
ディスカッション

引用:


これは配列として扱う方が簡単です。
PHP 側: print_r($_FILES['file']); //2 次元配列を取得し、配列を処理するだけです。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート