Показать сообщение отдельно

  #5  
Старый 16.12.2008, 19:34
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
Провел на форуме:
458686

Репутация: -25
Отправить сообщение для geforce с помощью ICQ
Question

.:EnoT:.

Но суть проблемы остается смотри!
Есть база под названием img с таблицами data и fotos
в них поля одинаковые id, name, url!
Всё работает в 3-и шага!

1. index.php первый шаг!

PHP код:
<!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=windows-1251" />
<
title>Загрузка</title>
</
head>
<
body>
<
form enctype="multipart/form-data" method="POST" action="load.php"
<
b>Фото:</b><br /> 
<
input type="file" name="myfile" style="width:304px; height:18px" id="myfile" /> 
<
br /><br /> 
<
input style="height: 35px;" type="submit" value="Добавить фото" name="submit"
</
form>  
</
body>
</
html
2. load.php второй шаг

PHP код:
<!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=windows-1251" />
<title>Untitled Document</title>
</head>
<body>
<?php 
// Подключаемься к базе данных 
include ("db.php"); 
//================Настройки============= // 
$maxwidth "300px"// максимальная ширина картинок на превью 
$fotos_dir "fotos/"// Директория для фотографий товаров 
$foto_name $fotos_dir.time()."_".basename($_FILES['myfile']['name']); // Полное имя файла вместе с путем 
$foto_light_name time()."_".basename($_FILES['myfile']['name']); // Имя файла исключая путь 
$foto_tag "<img src=\"$foto_name\" border=\"0\">"// Готовый тэг для вставки картинки на страницу 
$foto_tag_preview "<img src=\"$foto_name\" border=\"0\" width=\"$maxwidth\">"// Тот же тэг, но для превью 
// Текст ошибок 
$error_by_mysql "<span style=\"font: bold 15px tahoma; color: red;\">Ошибка при добавлении данных в базу</span>"
$error_by_file "<span style=\"font: bold 15px tahoma; color: red;\">Невозможно загрузить файл в директорию. Возможно её не существует</span>"
// Начало 
if(isset($_FILES["myfile"])) 

$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($error_flag == 0
{      
$DOCUMENT_ROOT $_SERVER['DOCMENT_ROOT']; 
$upfile getcwd()."\\fotos\\" time()."_".basename($_FILES["myfile"]["name"]); 
if (
$_FILES['myfile']['tmp_name']) 
{   
//Если не удалось загрузить файл 
if (!move_uploaded_file($_FILES['myfile']['tmp_name'], $upfile))  

echo 
"$error_by_file"
exit; 



else 

    echo 
'Проблема: возможна атака через загрузку файла. '
    echo 
$_FILES['myfile']['name']; 
    exit; 

// Заносим путь картинки в базу данных 
$q "INSERT INTO foto (url,name) VALUES ('$foto_name','$foto_light_name')"
$query mysql_query($q); 
// Загрузка с базы
$result mysql_query("SELECT * FROM foto WHERE name='$foto_light_name'",$db);
if (!
$result)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору admin@ruseller.com. <br> <strong>Код ошибки:</strong></p>";
exit(
mysql_error());
}
if (
mysql_num_rows($result) > 0)

{
$myrow mysql_fetch_array($result);
printf ("<img src='%s'/>",$myrow['url']);
$adres $myrow['url'];
}
else
{
echo 
"<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
// Данные успешно внесены в базу данных, выводим сообщение 
if ($query == 'true') { 
echo 
"<br /><b>Данные успешно внесены в базу</b>"

// В противном случае, выводим ошибку при добавлении в базу данных 
else { 
echo 
"$error_by_mysql"


        } 
  
 elseif (
$myfile_size == 0) { 
 echo 
"Пустая форма!"
 }  
}
?>
<form action="end.php" method="post" name="end">
<?
// Вывод базы картинок
$result1 mysql_query("SELECT * FROM data",$db);
if (!
$result1)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору admin@ruseller.com. <br> <strong>Код ошибки:</strong></p>";
exit(
mysql_error());
}
if (
mysql_num_rows($result1) > 0)
{
$myrow1 mysql_fetch_array($result1); 
do 
{
printf ("<br><br><img src='admin/%s'><input name='vibor' type='radio' value='%s'><label>%s</label><br>",$myrow1["url"],$myrow1["id"],$myrow1["name"]); 
}
while (
$myrow1 mysql_fetch_array($result1)); 
}
else
{
echo 
"<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
?>
<input name="load" type="hidden" value="<? echo $adres?>" />
<input name="sub" type="submit" value="далее" />
</form>
3. end.php тритий шаг(как ты посоветовал!!!)
PHP код:
<!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=windows-1251" />
<
title>Загрузка</title>
</
head><body>
<
div align="center"><img src='end1.php' /></div>
</
body></html
А в end1.php находится:

PHP код:
<?php include("db.php");
if (isset(
$_POST['vibor'])) { $vibor $_POST['vibor'];} 
if (isset(
$_POST['load'])) { $adres $_POST['load'];} 
$result1 mysql_query("SELECT * FROM data WHERE id='$vibor'",$db);
if (!
$result1)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору admin@ruseller.com. <br> <strong>Код ошибки:</strong></p>";
exit(
mysql_error());
}
if (
mysql_num_rows($result1) > 0)
{
$myrow1 mysql_fetch_array($result1);
$im imagecreatetruecolor(215750); 
$im1 imagecreatefromjpeg($adres);
$im2 imagecreatefromjpeg('logo.jpg');
$im3 imagecreatefromjpeg($myrow1['url']);
imagecopy($im$im100002525);
imagecopy($im$im2250002525);
imagecopy($im$im3025002525);
header('Content-type: image/jpeg'); 
imagejpeg($im);
}
else
{
echo 
"<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
?>
Проблема заключается в том что перевеные $vibor и $adres не передаются! Как это исправить?????
 
Ответить с цитированием