PHP код ошибка

12
I
На сайте с 11.01.2009
Offline
1
#11

Похоже у меня проблема в add_post.php


<form name="form1" method="post" action="add_post.php" enctype="multipart/form-data">
<p2>
<label>Введите название аватара:<br>
<input type="text" name="title" id="title">
</label>
</p2>
<br>
<p2>
<label>Введите дату добавления урока<br>
<input name="date" type="text" id="date" value="<?php $date = date("Y-m-d"); echo $date; ?>">
</label>
</p2>
<br>
<p2>
<label>Введите автора:<br>
<input type="text" name="author" id="author">
</label>
</p2>
<br>
<p2>
<label>Где лежит аватар:<br>

<input type="file" name="img" id="img" >
<? if($_FILES["filename"]["size"] > 1024*3*1024)
{
echo ("Размер файла превышает три мегабайта");
exit;
}
if(copy($_FILES["filename"]["tmp_name"],
"http://localhost/sites/temp/".$_FILES["filename"]["name"]))
{
echo("Файл успешно загружен <br>");
echo("Характеристики файла: <br>");
echo("Имя файла: ");
echo($_FILES["filename"]["name"]);
echo("<br>Размер файла: ");
echo($_FILES["filename"]["size"]);
echo("<br>Каталог для загрузки: ");
echo($_FILES["filename"]["tmp_name"]);
echo("<br>Тип файла: ");
echo($_FILES["filename"]["type"]);
} else {
echo("Ошибка загрузки файла");
}
?>
</label>
</p2>

<br>
<p2>
<label>Выберите категорию:<br>
<select name="cat">
<?

$result = mysql_query("SELECT title,id FROM categories",$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);

do
{
printf ("<option value='%s'>%s</option>",$myrow["id"],$myrow["title"]);



}
while ($myrow = mysql_fetch_array($result));



}

else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}

?>


</select>
</label>
</p2>
<br>
<p2>
<label>
<input type="submit" name="submit" id="submit" value="Занести аватар в базу">
</label>
</p2>
</form>

А вот это add_post.php

<?php 

include ("blocks/bd.php");
if (isset($_POST['title']))
{
$title = $_POST['title'];

if ($title == '')
{
unset($title);
}

}

/* Если существует в глобальном массиве $_POST['title'] опр. ячейка, то мы создаем простую переменную из неё. Если переменная пустая, то уничтожаем переменную. */


if (isset($_POST['date'])) {$date = $_POST['date']; if ($date == '') {unset($date);}}


if (isset($_POST['author'])) {$author = $_POST['author']; if ($author == '') {unset($author);}}

if (isset($_POST['img'])) {$img = $_POST['img']; if ($img == '') {unset($img);}}

if (isset($_POST['cat'])) {$cat = $_POST['cat']; if ($cat == '') {unset($cat);}}







?>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Главная - По рубрикам</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<link rel="stylesheet" type="text/css" href="style.css" media="screen" />
</head>
<body>
<div id="container">
<div id="head">
<h1><a href="http://www.free-css.com/"></a></h1>
<? include ("blocks/menu.php"); ?>
<div class="top_head_banner"> </div>
</div>
<? include ("blocks/polosa.php");?>
<? include ("blocks/polosa2.php"); ?>
<div id="content_left">


<?php
if (isset($title) && isset($date) && isset($author) && isset($img) && isset($cat))
{
/* Здесь пишем что можно заносить информацию в базу */
$result = mysql_query ("INSERT INTO data (title,date,author,mini_img,cat) VALUES ('$title', '$date','$author','$img','$cat')");

if ($result == 'true') {echo "<p>Ваша заметка успешно добалена!</p>";}
else {echo "<p>Ваша заметка не добалена!</p>";}

}
else

{
echo "<p>Вы ввели не всю информацию, поэтому заметка в базу не может быть добалена.</p>";
}


?>

</div>
<div id="content_right">
<? include ("blocks/lefttd.php"); ?>
</div>

<div class="spacer"></div>
</div>
<div id="footer">
<div style="float:left; padding-left:40px;"> Все права защищены,2008г</div>
<div id="madeby"> <br />
</div>
</div>
</div>
</body>
</html>

Посмотрите может где то ошибка.

savage
На сайте с 10.01.2007
Offline
224
#12

igort, обработка загрузки файла copy и т.п. должно осуществляться в add_post.php и путь указан не правильно, путь должен быть относительный от корня сайта.

Уже не говорю про: if (isset($_POST['img'])) ..., я выше все по шагам уже написал, что нужно делать.

Вообще вы, по-моему, слабо представляете, что делаете - рекомендую почитать литературу по php для начала, а потом уже ваять что-либо.

Купить / продать сайт ( https://www.telderi.ru/?pid=ca1f70 ) | Недорогой и надежный хостинг ( https://www.get-host.ru )
I
На сайте с 11.01.2009
Offline
1
#13

Вот ваш код



if (!empty(img)) {$path="Z:\home\localhost\www\sites\temp\$img_name"; copy($_FILES['img']['tmp_name'], "../$path"); }

Я вот переставил так норм.


<form name="form1" method="post" action="add_post.php" enctype="multipart/form-data">
<p2>
<label>Введите название аватара:<br>
<input type="text" name="title" id="title">
</label>
</p2>
<br>
<p2>
<label>Введите дату добавления урока<br>
<input name="date" type="text" id="date" value="<?php $date = date("Y-m-d"); echo $date; ?>">
</label>
</p2>
<br>
<p2>
<label>Введите автора:<br>
<input type="text" name="author" id="author">
</label>
</p2>
<br>
<p2>
<label>Где лежит аватар:<br>
<input type=hidden name=MAX_FILE_SIZE value=700000>
<input type=file name=img>
</label>
</p2>

<br>
<p2>
<label>Выберите категорию:<br>
<select name="cat">
<?

$result = mysql_query("SELECT title,id FROM categories",$db);

if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору. <br> <strong>Код ошибки:</strong></p>";
exit(mysql_error());
}

if (mysql_num_rows($result) > 0)

{
$myrow = mysql_fetch_array($result);

do
{
printf ("<option value='%s'>%s</option>",$myrow["id"],$myrow["title"]);



}
while ($myrow = mysql_fetch_array($result));



}

else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}

?>


</select>
</label>
</p2>
<br>
<p2>
<label>
<input type="submit" name="submit" id="submit" value="Занести аватар в базу">
</label>
</p2>
</form>














<?php
include ("blocks/bd.php");


if (isset($_POST['title']))
{
$title = $_POST['title'];

if ($title == '')
{
unset($title);
}

}

/* Если существует в глобальном массиве $_POST['title'] опр. ячейка, то мы создаем простую переменную из неё. Если переменная пустая, то уничтожаем переменную. */


if (isset($_POST['date'])) {$date = $_POST['date']; if ($date == '') {unset($date);}}


if (isset($_POST['author'])) {$author = $_POST['author']; if ($author == '') {unset($author);}}

if (!empty(img)) {$path="Z:\home\localhost\www\sites\temp\$img_name"; copy($_FILES['img']['tmp_name'], "../$path"); }


if (isset($_POST['cat'])) {$cat = $_POST['cat']; if ($cat == '') {unset($cat);}}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Главная - По рубрикам</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<link rel="stylesheet" type="text/css" href="style.css" media="screen" />
</head>
<body>
<div id="container">
<div id="head">
<h1><a href="http://www.free-css.com/"></a></h1>
<? include ("blocks/menu.php"); ?>
<div class="top_head_banner"> </div>
</div>
<? include ("blocks/polosa.php");?>
<? include ("blocks/polosa2.php"); ?>
<div id="content_left">


<?php
if (isset($title) && isset($date) && isset($author) && isset($img) && isset($cat))
{
/* Здесь пишем что можно заносить информацию в базу */
$result = mysql_query ("INSERT INTO data (title,date,author,mini_img,cat) VALUES ('$title', '$date','$author','$img','$cat')");

if ($result == 'true') {echo "<p>Ваша заметка успешно добалена!</p>";}
else {echo "<p>Ваша заметка не добалена!</p>";}

}
else

{
echo "<p>Вы ввели не всю информацию, поэтому заметка в базу не может быть добалена.</p>";
}


?>

</div>
<div id="content_right">
<? include ("blocks/lefttd.php"); ?>
</div>

<div class="spacer"></div>
</div>
<div id="footer">
<div style="float:left; padding-left:40px;"> Все права защищены,2008г</div>
<div id="madeby"> <br />
</div>
</div>
</div>
</body>
</html>

[Удален]
#14

перед img доллар, а то он думает наверное что это класс и хочет двойное двоеточие

I
На сайте с 11.01.2009
Offline
1
#15

Вот и исправил ошибку ,спасибо neolord.

igort добавил 12.01.2009 в 14:25

Если что укажите пожалуйста где надо будет исправить.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий