Ex_Soft
Новичок
upload, store and select image (MySQL etc.)
На'google'лив кучу примеров наваял
1. Файл upload'ится, и в БД записывается. Но, вот, с выводом - засада. Возвращается страница вместо рисунка. Что еще нужно покрутить/подкрутить/пнуть чтобы забегало?
2. Опять же за'google'л на предмет параметризированных запросов - получил ссылки на mysqli. Я так понимаю - это как "...Карл Маркс и Фридрих Энгельс - не муж и жена, а совершенно разных четыре человека..." Т.е. если я все делал на mysql_, то теперь мне нужно подключить mysqli_ и все переделать под mysqli? А у mysql_ что- своего механизма работы с параметрами - нЭт?
3. Вообще-то это моя первая страничка на php - если что-то бросается в глаза (так не делают вообще, так не делают нормальные, так не делают пацаны): не стесняйтесь - высказывайтесь...
На'google'лив кучу примеров наваял
PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test Upload File</title>
</head>
<body>
<?php
foreach($_REQUEST as $key => $val)
{
if(isset($$key))
unset($$key);
};
if(get_magic_quotes_gpc())
{
$_GET=array_map("stripslashes",$_GET);
$_POST=array_map("stripslashes",$_POST);
$_COOKIE=array_map("stripslashes",$_COOKIE);
};
ini_set("magic_quotes_gpc","0");
ini_set("magic_quotes_runtime","0");
ini_set("display_errors","1");
if(version_compare(phpversion(),"5.0.0",">")==1)
{
ini_set("error_reporting",E_ALL|E_STRICT);
}
else
{
ini_set("error_reporting",E_ALL);
};
if(isset($_REQUEST["btnSubmit"]))
{
if($_FILES["HtmlInputFile"]["size"]>0)
{
$imgData=addslashes(file_get_contents($_FILES["HtmlInputFile"]["tmp_name"]));
$link=mysql_pconnect("localhost","root","") or die ("Could not connect: ".mysql_error());
mysql_select_db("test") or die ("Unable to select db: ".mysql_error());
$sql="insert into testblob (image) values ('{$imgData}')";
mysql_query($sql) or die ("Unable to upload file: ".mysql_error());
$sql="select image from testblob where id=1";
$result=mysql_query($sql) or die ("Invalid query: ".mysql_error());
mysql_close($link);
header("Content-type: image/jpeg");
echo(mysql_result($result,0));
}
else
echo("Size: ".$_FILES["HtmlInputFile"]["size"]."<br/>");
}
else
echo("!IsPostBack<br/>");
?>
<form action="testuploadfile.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
<input type="file" id="HtmlInputFile" name="HtmlInputFile" />
<input type="submit" id="btnSubmit" name="btnSubmit" value="Upload" />
</form>
</body>
</html>
2. Опять же за'google'л на предмет параметризированных запросов - получил ссылки на mysqli. Я так понимаю - это как "...Карл Маркс и Фридрих Энгельс - не муж и жена, а совершенно разных четыре человека..." Т.е. если я все делал на mysql_, то теперь мне нужно подключить mysqli_ и все переделать под mysqli? А у mysql_ что- своего механизма работы с параметрами - нЭт?
3. Вообще-то это моя первая страничка на php - если что-то бросается в глаза (так не делают вообще, так не делают нормальные, так не делают пацаны): не стесняйтесь - высказывайтесь...
И, пожалуйста, давайте не будем холиварить на эту тему. Особ страждущим могу дать пару-тройку линков - пусть там упражняются.