[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вставка данных из таблицы и ссылок на img в mysql
yurik_kkk
Здравствуйте уважаемые

имеется следующая таблица ввода (index.php):
<form name="form1" method="post" action="upload.php" style="margin-left:5px">

<p style="font-size:20px" align="center"> Project Title<br />
<label>
<input type="text" name="titleOGP" id="titleOGP" />
</label>
</p>
<p style="font-size:20px" align="center">Members<br />
<label>
<textarea name="member" id="member"></textarea>
</label>
</p>
<p style="font-size:20px" align="center">Application Areas<br />
<label>
<textarea type="text" name="applicationAreas" id="applicationAreas"></textarea>
</label>
</p>
<p style="font-size:20px" align="center">Project Description<br />
<label>
<textarea name="projectText" id="projectText" ></textarea>
</label>
</p>
<p style="font-size:20px" align="center">Funding Source<br />
<label>
<textarea type="text" name="fundingSource" id="fundingSource"></textarea>
</label>
</p>
<p style="font-size:20px" align="center">Publications<br />
<label>
<textarea type="text" name="publications" id="publications"></textarea>
</label>
</p>

<p style="font-size:20px" align="center">
Choose SID category<br>
<label>
<select name="projectSIDid">

<? $result = mysql_query("SELECT titleSID,id FROM SID",$db);
if (!$result)
{
echo "<p>Problem took place, contact administrator<br> <strong>Error code:</strong></p>";
exit(mysql_error());
}

if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_assoc($result);

do
{
printf ("<option value='%s'>%s</option>",$myrow["id"],$myrow["titleSID"]);
}while ($myrow = mysql_fetch_array($result));
}

else
{
echo "<p>No such information in the table</p>";
exit();
}
?>

</select>
</label>
</p>

<p align="center"><b>Upload Image</b><input type="file" name="myfile"><br></p>
<p align="center"><b>Upload Image</b><input type="file" name="myfile2"><br></p>
<p align="center"><b>Upload Image</b><input type="file" name="myfile3"><br></p>
<p align="center">
<label>
<input type="submit" name="submit" id="submit" value="Submit into database" >
</label>
</p>
</form>

Запускаю страницу обработчик(upload.php):

if (isset($projectSIDid, $titleOGP, $member, $applicationAreas, $projectText, $fundingSource, $publications ))
{
$uploaddir = '../picture/'; // Relative path under webroot
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

if (move_uploaded_file($_FILES['myfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "File uploading failed.\n";
}

/* Здесь пишем что можно заносить информацию в базу */
$result = mysql_query ("INSERT INTO `projects`
(`projectSIDid`, `titleOGP`, `member`, `applicationAreas`, `projectText`, `fundingSource`, `publications`,
`foto`,`foto2`, `foto3`)
VALUES
('". mysql_real_escape_string($projectSIDid) ."',
'". mysql_real_escape_string($titleOGP) ."',
'". mysql_real_escape_string($member) ."',
'". mysql_real_escape_string($applicationAreas) ."',
'". mysql_real_escape_string($projectText) ."',
'". mysql_real_escape_string($fundingSource) ."',
'". mysql_real_escape_string($publications) ."',
'$foto_name', `$foto_name2`, `$foto_name3`

)"
);

if (mysql_affected_rows() > 0)
echo "<br><br><p align='center' style='font-size:20px'>New research is added!</p>";
else
echo "<br><br><p align='center' style='font-size:20px'>Error took place. Please repeat!</p>";
}
else
{
echo "<br><br><p align='center' style='font-size:20px'>You have entered not all needed information</p>";
}



Но никак не могу загрузить 3 картинки в вышеописанную таблицу(в примере для 1-й). Выдает мой if - случай: File uploading failed

Посоветуйте или скажите где почитать как я могу загрузить и как прописать загрузку 3-х фото(думаю повторять код и менять переменные не совсем логично, хотя..)





Спустя 4 минуты, 19 секунд (1.06.2011 - 13:50) yurik_kkk написал(а):
Вначале прописывал такой код на обработку, но что то сильно запутался

<?
$maxwidth = "300px"; // pic size for preview
$fotos_dir = "../picture/"; // file derictory
$foto_name = $fotos_dir.time()."_".basename($_FILES['myfile']['name']); // File name with path
$foto_light_name = time()."_".basename($_FILES['myfile']['name']); // File name without included path
$foto_tag = "<img src=\"$foto_name\" border=\"0\">"; // To inser pic
$foto_tag_preview = "<img src=\"$foto_name\" border=\"0\" width=\"$maxwidth\">"; // Teg for preview

// Error
$error_by_mysql = "<span style=\"font: bold 15px tahoma; color: red;\">Error while inserting into database</span>";
$error_by_file = "<span style=\"font: bold 15px tahoma; color: red;\">Not possible to load file into a path</span>";

$myfile = $_FILES["myfile"]["tmp_name"];
$myfile_name = $_FILES["myfile"]["name"];
$myfile_size = $_FILES["myfile"]["size"];
$myfile_type = $_FILES["myfile"]["type"];
$error_flag = $_FILES["myfile"]["error"];

// if no errors

if($error_flag == 0)

{

$DOCUMENT_ROOT = $_SERVER['DOCMENT_ROOT'];
$upfile = getcwd()."\..\\picture\\" . time()."_".basename($_FILES["myfile"]["name"]);
if ($_FILES['myfile']['tmp_name'])
{
//if its not uploaded
if (!move_uploaded_file($_FILES['myfile']['tmp_name'], $upfile))
{
echo "error";

}
}
else
{
echo 'Problem ';

}

// After successful file uploading

}
?>

Спустя 17 минут, 37 секунд (1.06.2011 - 14:08) Игорь_Vasinsky написал(а):
используй bb-теги, чтобы сделать код читабельней wink.gif

Спустя 9 минут, 35 секунд (1.06.2011 - 14:18) yurik_kkk написал(а):
index.php

<form name="form1" method="post" action="add_new_rsrch.php" style="margin-left:5px">

<p style="font-size:20px" align="center"> Project Title<br />
<label>
<input type="text" name="titleOGP" id="titleOGP" />
</label>
</p>
<p style="font-size:20px" align="center">Members<br />
<label>
<textarea name="member" id="member"></textarea>
</label>
</p>
<p style="font-size:20px" align="center">Application Areas<br />
<label>
<textarea type="text" name="applicationAreas" id="applicationAreas"></textarea>
</label>
</p>
<p style="font-size:20px" align="center">Project Description<br />
<label>
<textarea name="projectText" id="projectText" ></textarea>
</label>
</p>
<p style="font-size:20px" align="center">Funding Source<br />
<label>
<textarea type="text" name="fundingSource" id="fundingSource"></textarea>
</label>
</p>
<p style="font-size:20px" align="center">Publications<br />
<label>
<textarea type="text" name="publications" id="publications"></textarea>
</label>
</p>

<p style="font-size:20px" align="center">
Choose SID category<br>
<label>
<select name="projectSIDid">

<? $result = mysql_query("SELECT titleSID,id FROM SID",$db);
if (!$result)
{
echo "<p>Problem took place, contact administrator<br> <strong>Error code:</strong></p>";
exit(mysql_error());
}

if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_assoc($result);

do
{
printf ("<option value='%s'>%s</option>",$myrow["id"],$myrow["titleSID"]);
}while ($myrow = mysql_fetch_array($result));
}

else
{
echo "<p>No such information in the table</p>";
exit();
}
?>

</select>
</label>
</p>

<p align="center"><b>Upload Image</b><input type="file" name="myfile"><br></p>
<p align="center"><b>Upload Image</b><input type="file" name="myfile2"><br></p>
<p align="center"><b>Upload Image</b><input type="file" name="myfile3"><br></p>
<p align="center">
<label>
<input type="submit" name="submit" id="submit" value="Submit into database" >
</label>
</p>
</form>


upload.php


<?php


if (isset($projectSIDid, $titleOGP, $member, $applicationAreas, $projectText, $fundingSource, $publications ))
{
$myfile = $_FILES["myfile"]["tmp_name"];
$myfile_name = $_FILES["myfile"]["name"];
$myfile_size = $_FILES["myfile"]["size"];
$myfile_type = $_FILES["myfile"]["type"];
$error_flag = $_FILES["myfile"]["error"];

$foto_dir = "./picture/";
$foto_name = $fotos_dir.time()."_".basename($_FILES['myfile']['name']); // File name with path
$upfile = getcwd()."\..\\picture\\" . time()."_".basename($_FILES["myfile"]["name"]);

if (move_uploaded_file($_FILES['myfile']['tmp_name'], $upfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "File uploading failed.\n";
}


/* Здесь пишем что можно заносить информацию в базу */
$result = mysql_query ("INSERT INTO `projects`
(`projectSIDid`, `titleOGP`, `member`, `applicationAreas`, `projectText`, `fundingSource`, `publications`,
`foto`)
VALUES
('". mysql_real_escape_string($projectSIDid) ."',
'". mysql_real_escape_string($titleOGP) ."',
'". mysql_real_escape_string($member) ."',
'". mysql_real_escape_string($applicationAreas) ."',
'". mysql_real_escape_string($projectText) ."',
'". mysql_real_escape_string($fundingSource) ."',
'". mysql_real_escape_string($publications) ."',
'$foto_name'

)"
);

if (mysql_affected_rows() > 0)
echo "<br><br><p align='center' style='font-size:20px'>New research is added!</p>";
else
echo "<br><br><p align='center' style='font-size:20px'>Error took place. Please repeat!</p>";
}
else
{
echo "<br><br><p align='center' style='font-size:20px'>You have entered not all needed information</p>";
}

?>

Спустя 12 минут, 6 секунд (1.06.2011 - 14:30) Krevedko написал(а):
biggrin.gif

Спустя 4 минуты, 49 секунд (1.06.2011 - 14:35) yurik_kkk написал(а):
да я смотрел попова, затем читал irbis-team cool.gif

Спустя 6 минут, 15 секунд (1.06.2011 - 14:41) Krevedko написал(а):
вообще-то имелось ввиду сделать что-то типа

if (isset($projectSIDid, $titleOGP, $member, $applicationAreas, $projectText, $fundingSource, $publications ))
{
$uploaddir = '../picture/'; // Relative path under webroot
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

if (move_uploaded_file($_FILES['myfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "File uploading failed.\n";
}

а не выделить жирным весь текст ))

Спустя 10 минут, 11 секунд (1.06.2011 - 14:51) yurik_kkk написал(а):
:D

все равно говорит "File uploading failed" :unsure:
хотя добавил "." и изменил basename($_FILES['userfile']['name'] на нужный basename($_FILES['myfile']['name']

<?php

include 'blocks/check.php';
require_once 'blocks/mysql.php';
if (!empty($_POST['titleOGP']))
{
$titleOGP = $_POST['titleOGP'];
}

if (!empty($_POST['member'])) $member = $_POST['member'];
if (!empty($_POST['applicationAreas'])) $applicationAreas = $_POST['applicationAreas'];
if (!empty($_POST['projectText'])) $projectText = $_POST['projectText'];
if (!empty($_POST['fundingSource'])) $fundingSource = $_POST['fundingSource'];
if (!empty($_POST['publications'])) $publications = $_POST['publications'];
if (!empty($_POST['projectSIDid'])) $projectSIDid = $_POST['projectSIDid'];
if (!empty($_POST['projectSIDid'])) $projectSIDid = $_POST['projectSIDid'];


?>
<!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>Adding of SID</title>
<
link href="css/style.css" rel="stylesheet" type="text/css" />
</
head>

<
body class="bg">
<
div id="container">
<? include 'blocks/flashBanner.php' ?>
<div id="infField">
<? include 'blocks/menu.php' ?>
<div id="displayInfo">



<?php


if (isset($projectSIDid, $titleOGP, $member, $applicationAreas, $projectText, $fundingSource, $publications ))
{
$uploaddir = '../picture/'; // Relative path under webroot
$uploadfile = $uploaddir . basename($_FILES['myfile']['name']);

if (move_uploaded_file($_FILES['myfile']['tmp_name'], $uploadfile))
{
echo "File is valid, and was successfully uploaded.\n";
}
else
{
echo "File uploading failed.\n";
}


/* Здесь пишем что можно заносить информацию в базу */
$result = mysql_query ("INSERT INTO `projects`
(`projectSIDid`, `titleOGP`, `member`, `applicationAreas`, `projectText`, `fundingSource`, `publications`,
`foto`)
VALUES
('"
. mysql_real_escape_string($projectSIDid) ."',
'"
. mysql_real_escape_string($titleOGP) ."',
'"
. mysql_real_escape_string($member) ."',
'"
. mysql_real_escape_string($applicationAreas) ."',
'"
. mysql_real_escape_string($projectText) ."',
'"
. mysql_real_escape_string($fundingSource) ."',
'"
. mysql_real_escape_string($publications) ."',
'
$uploadfile'

)"

);

if (mysql_affected_rows() > 0)
echo "<br><br><p align='center' style='font-size:20px'>New research is added!</p>";
else
echo "<br><br><p align='center' style='font-size:20px'>Error took place. Please repeat!</p>";
}
else
{
echo "<br><br><p align='center' style='font-size:20px'>You have entered not all needed information</p>";
}

?>


</div>
</
div>
<? include 'blocks/footer.php' ?>
</div>

</
body>
</
html>



Спустя 1 час, 7 минут, 50 секунд (1.06.2011 - 15:59) Игорь_Vasinsky написал(а):
код формы дай глянуть

Спустя 1 минута, 59 секунд (1.06.2011 - 16:01) yurik_kkk написал(а):
Вот она



<form name="form1" method="post" action="add_new_rsrch.php" style="margin-left:5px">

<
p style="font-size:20px" align="center"> Project Title<br />
<
label>
<
input type="text" name="titleOGP" id="titleOGP" />
</
label>
</
p>
<
p style="font-size:20px" align="center">Members<br />
<
label>
<
textarea name="member" id="member"></textarea>
</
label>
</
p>
<
p style="font-size:20px" align="center">Application Areas<br />
<
label>
<
textarea type="text" name="applicationAreas" id="applicationAreas"></textarea>
</
label>
</
p>
<
p style="font-size:20px" align="center">Project Description<br />
<
label>
<
textarea name="projectText" id="projectText" ></textarea>
</
label>
</
p>
<
p style="font-size:20px" align="center">Funding Source<br />
<
label>
<
textarea type="text" name="fundingSource" id="fundingSource"></textarea>
</
label>
</
p>
<
p style="font-size:20px" align="center">Publications<br />
<
label>
<
textarea type="text" name="publications" id="publications"></textarea>
</
label>
</
p>

<
p style="font-size:20px" align="center">
Choose SID category<br>
<
label>
<
select name="projectSIDid">

<? $result = mysql_query("SELECT titleSID,id FROM SID",$db);
if (!$result)
{
echo "<p>Problem took place, contact administrator<br> <strong>Error code:</strong></p>";
exit(mysql_error());
}

if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_assoc($result);

do
{
printf ("<option value='%s'>%s</option>",$myrow["id"],$myrow["titleSID"]);
}while ($myrow = mysql_fetch_array($result));
}

else
{
echo "<p>No such information in the table</p>";
exit();
}
?>

</select>
</
label>
</
p>

<
p align="center"><b>Upload Image</b><input type="file" name="myfile"><br></p>
<
p align="center"><b>Upload Image</b><input type="file" name="myfile2"><br></p>
<
p align="center"><b>Upload Image</b><input type="file" name="myfile3"><br></p>
<
p align="center">
<
label>
<
input type="submit" name="submit" id="submit" value="Submit into database" >
</
label>
</
p>
</
form>


Спустя 9 минут, 10 секунд (1.06.2011 - 16:10) Игорь_Vasinsky написал(а):
Во первых: харе листинг всей страницы выставлять.
Во вторых: в <form> добавь enctype="multipart/form-data"

Спустя 1 минута, 22 секунды (1.06.2011 - 16:11) Игорь_Vasinsky написал(а):
Цитата
да я смотрел попова, затем читал irbis-team

а толку то.
что это: ???
$var = isset($var) ? $var : null;

Спустя 8 минут, 53 секунды (1.06.2011 - 16:20) yurik_kkk написал(а):
учту, отредактировал вид формы ))

говоря о том, что я читал irbis-team я не хвалился полученными знаниями, коих не много на данный момент.

Вам нужен конкретный ответ?, приблизительно, это если переменная установлена - то будет такое значение, если нет то ноль, так?

Спустя 3 минуты, 19 секунд (1.06.2011 - 16:24) Игорь_Vasinsky написал(а):
Цитата
да я смотрел попова, затем читал irbis-team

и
Цитата
говоря о том, что я читал irbis-team я не хвалился полученными знаниями, коих не много на данный момент.


А по ситуации - не просто читать нужно, а учиться - пробывать, проверять.

Цитата
Вам нужен конкретный ответ?, приблизительно, это если переменная установлена - то будет такое значение, если нет то ноль, так?

совершенно верно, а называется такая конструкция "тернарный оператор"

Что дальше?

Спустя 2 минуты, 6 секунд (1.06.2011 - 16:26) yurik_kkk написал(а):
благодарю за исправление.
Посоветуйте, как можно грамотно реализовать добавление изображений в бд, копировать и изменять кажется не очень правильным

Спустя 5 минут, 39 секунд (1.06.2011 - 16:31) Игорь_Vasinsky написал(а):
Цитата
Посоветуйте, как можно грамотно реализовать добавление изображений в бд,

я приверженец того, что изображение в БД заносить - не вижу смысла, я храню в БД путь до картинки и имя файла.

Кроме того ты думаешь что твой код щас грузит все 3 картинки из формы?

Спустя 11 минут, 32 секунды (1.06.2011 - 16:43) yurik_kkk написал(а):
может быть неправильно выразился... это факт хаха
конечно я не храню изображения в бд, по коду видно,только ссылки я его весь не скопипастил от куда то )))
если я в переменной добавлю цифры, типа 2 и 3 то я загоню данный в бд, щас так и сделал, проверки ради, но я хочу еще воткнуть ресайз и секюрити проверку на типы. куда лучше прописать все эо добро, если я буду следовать логике скопировать поменять названия в результате будет огромный повторяющийся код.

Спустя 5 минут, 48 секунд (1.06.2011 - 16:49) Игорь_Vasinsky написал(а):
Цитата
но я хочу еще воткнуть ресайз и секюрити проверку на типы.

отличная мысль.

а логика:

При загрузки картинки проверить расширение, mime type, ресайзить и move в нужную папку.

Спустя 8 минут, 20 секунд (1.06.2011 - 16:57) yurik_kkk написал(а):
логика как бы понятна, я интересуюсь возможностью написания цикла, вроде array-подобного.
незнаю есть ли такое, но хочется что-то типа:
for( $_FILES['myfile[0]']['name']; $_FILES['myfile[5]']['name']; что-то++)
{
здесь вся кухня(типы,куда грузить, ресайз, сохранение переменной для бд и тд.)
}

и потом я весь этот модуль подключу. если это возможно - то какие условия взять для for лупа

Спустя 8 минут, 9 секунд (1.06.2011 - 17:05) Игорь_Vasinsky написал(а):
ты счас большую глупость написал, по поводу array образного цикла - то написания его прототипа.

Можешь просто функцию написать:

function modification($name_image, $size_image)
{
//тело функции
return array();
}

Спустя 22 минуты, 24 секунды (1.06.2011 - 17:27) yurik_kkk написал(а):
можете сослаться на какой-либо пример, для полной наглядности?

Спустя 12 минут, 33 секунды (1.06.2011 - 17:40) Игорь_Vasinsky написал(а):
в гугле набери resize image php
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.