Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: скрипт для загрузки фотографий на сайт

Сообщения:  [1-10]    [11-20]   [21-30]   [31-40]  [41-46] 

 
 автор: cheops   (21.04.2011 в 10:09)   письмо автору
 
   для: RobotWerder   (21.04.2011 в 07:39)
 

Да, количество столбцов должно совпадать.

>интересно так же.. как туда загружать и мелкие и большие фото одновременно и как следать
>список выпадающих папок?!
Нужно использовать два элемента управления типа file или формировать из большого изображения уменьшенное средствами расширения GDLib. Выпадающий список следует формировать при помощи <select>...</select>.

PS Лучше под новые вопросы завести новые темы, так как эта уже довольно большая, да и основную задачу выполнили. Так и ответов можно больше получить и искать/ссылаться на них во ответах другим посетителям будет проще.

  Ответить  
 
 автор: RobotWerder   (21.04.2011 в 07:39)   письмо автору
25.7 Кб
 
   для: cheops   (30.03.2011 в 16:02)
 

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

<?php

?>
<form enctype='multipart/form-data' method=post>
<input type="file" name="image"><br>
<input type=submit value='Загрузить'>
</form>
<?php
// Число изображений на странице
$pnumber 3;
 
// Устанавливаем соединение с базой данных
 
// Сетевой адрес MySQL-сервера
$dblocation "localhost";
// Имя базы данных
$dbname "photo";
// Пользователь
$dbuser "root";
// Его пароль
$dbpasswd "";
// Устанавливаем соединение с базой данных
$dbcnx mysql_connect($dblocation,$dbuser,$dbpasswd);
if (!
$dbcnx) exit ("К сожалению, не доступен сервер MySQL : ".mysql_error());
// Выбираем базу данных
if (!@mysql_select_db($dbname,$dbcnx)) exit("К сожалению, не доступна база данных : ".mysql_error());
 
// Обработчик HTML-формы
if(!empty($_FILES))
{
    
// Проверяем является ли переданный файл картинкой
    
if(substr($_FILES['image']['type'],0,5) == 'image')
    {
        
// Читаем содержимое файла
        
$content file_get_contents($_FILES['image']['tmp_name']);
        
// Уничтожаем файл во временной директории
        
unlink($_FILES['image']['tmp_name']);
 
        
// Экранируем спец-символы в бинарном содержимом файла
        
$content mysql_escape_string($content);
 
        
// Формируем запрос на добавление файла в таблицу
        
$query "INSERT INTO photo VALUES(NULL, '".$_FILES['image']['name']."', '$content')";
        if(
mysql_query($query))
        {
            
// Осуществляем автоматическую перезагрузку страницы
            
echo "<HTML><HEAD>
                <META HTTP-EQUIV='Refresh' CONTENT='0; URL=
$_SERVER[PHP_SELF]'>
             </HEAD></HTML>"
;
        } else exit(
mysql_error());
    }
}
?>


остановился на том что скрипт ругается на несовпадение кол-ва добавляемых полей кол-ву столбиков в базе..
Column count doesn't match value count at row 1
На всяк случай прикреплю вид базы
интересно так же.. как туда загружать и мелкие и большие фото одновременно и как следать список выпадающих папок?!

  Ответить  
 
 автор: cheops   (30.03.2011 в 16:02)   письмо автору
 
   для: RobotWerder   (30.03.2011 в 15:40)
 

1. Эти тэги можно добавлять там же где имеются тэги <table> и </table>, за пределами <?php и ?>
2. Самый просто способ это добавить div-тэг в многострадальную переменную $image
<?php
  
...
          
$image "<div class='phtname'>".$par['name']."</div>".
              
"<div><a href='/wallist_mysql/picture/large/".$par['path']."' title='Увеличенное изображение'>".    
              
"<img src='/wallist_mysql/picture/small/".$par['path']."' border='0' vspace='3' />".   
              
"</a></div>";
  ...
?>

  Ответить  
 
 автор: RobotWerder   (30.03.2011 в 15:40)   письмо автору
 
   для: cheops   (30.03.2011 в 14:58)
 

УРРРЯЯЯ !!!!
Слава скромному магу и волшебнику по имени cheops

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

1. Я думаю этот скрипт надо внедрить в html тэги <body> </body>
Как будет выглядеть вызов этого скрипта?!

2. Хотелось бы из столбика name этой же таблички выковырять содержимое и прикрепить его в виде следующей строчки таблицы

------------- --------------
фото 1 фото 2
------------- --------------
имя фото1 имя фото2
------------- --------------

и тд.. ?!

Надеюсь вы поможете в решении, хочется доделать до конца

  Ответить  
 
 автор: cheops   (30.03.2011 в 14:58)   письмо автору
 
   для: RobotWerder   (30.03.2011 в 14:06)
 

Вот на такой замените
<?php 
  
// Устанавливаем соединение с базой данных 
  
require_once("config.php"); 
  
// количество фотографий в строке таблицы 
  
$numphoto 3
?><table width="100%" border="1" cellpadding="5" cellspacing="0"> 
<?php 
  
// Выбираем из базы данных фотографии 
  
$query "SELECT * FROM db_images 
            WHERE hide = 0  
            ORDER BY name"

  
$prt mysql_query($query); 
  if(!
$prt
  { 
    echo 
"error : ".mysql_error()."<br>"
    echo 
$query
    
puterror("Ошибка при обращении к блоку Фотогалерея"); 
  } 
  
// Если в текущей группе фотографии имеется хотя бы одна 
  // фотография - формируем таблицу с фотографиями 
  
if(mysql_num_rows($prt) > 0
  { 
    
// Вспомогательная переменная для вывода 
    // фотографий по $numphoto штуки в строке 
    
$td 0
    
// Выводим заголовок таблицы 
    
while($par mysql_fetch_array($prt)) 
    { 
      
// Увеличенное изобаржение находится в picture/large/".$par['path']." 
        
$image "<a href='/wallist_mysql/picture/large/".$par['path']."' title='Увеличенное изображение'>".   
              
"<img src='/wallist_mysql/picture/small/".$par['path']."' border='0' vspace='3' />".  
              
"</a>";  
      
// Если значение временной переменной равно 0 
      // выводим тэг начала строки таблицы <tr> 
      
if ($td == 0) echo "<tr>"
      
// Выводим фотографию 
      
echo "<td>$image</td>"
      
// Увеличиваем значение временной переменной $td 
      
$td++; 
      
// Если временная переменная $td принимает значение 
      // равное $numphoto, следовательно строка завершена, и необходимо 
      // вывести завершающий тэг </tr>, а значение самой 
      // переменной обнулить 
      
if ($td == $numphoto
      { 
        echo 
"</tr>"
        
$td 0
      }          
    } 
  } 
?></table>

  Ответить  
 
 автор: RobotWerder   (30.03.2011 в 14:06)   письмо автору
 
   для: cheops   (30.03.2011 в 13:55)
 

http://liline.ru/wallist_mysql/picture/small/00000x1.jpg
да, видно

код не сработал.. теперь я имею


<?php
  
// Устанавливаем соединение с базой данных
  
require_once("config.php");
  
// количество фотографий в строке таблицы
  
$numphoto 3;
?><table width="100%" border="1" cellpadding="5" cellspacing="0">
<?php
  
// Выбираем из базы данных фотографии
  
$query "SELECT * FROM db_images
            WHERE hide = 0 
            ORDER BY name"
;
  
$prt mysql_query($query);
  if(!
$prt)
  {
    echo 
"error : ".mysql_error()."<br>";
    echo 
$query;
    
puterror("Ошибка при обращении к блоку Фотогалерея");
  }
  
// Если в текущей группе фотографии имеется хотя бы одна
  // фотография - формируем таблицу с фотографиями
  
if(mysql_num_rows($prt) > 0)
  {
    
// Вспомогательная переменная для вывода
    // фотографий по $numphoto штуки в строке
    
$td 0;
    
// Выводим заголовок таблицы
    
while($par mysql_fetch_array($prt))
    {
      
// Увеличенное изобаржение находится в picture/large/".$par['path']."
        
$image "<a href='picture/large/".$par['path']."' title='Увеличенное изображение'>".  
              
"<img src='picture/small/".$par['path']."' border='0' vspace='3' />"
              
"</a>"
      
// Если значение временной переменной равно 0
      // выводим тэг начала строки таблицы <tr>
      
if ($td == 0) echo "<tr>";
      
// Выводим фотографию
      
echo "<td>$image</td>";
      
// Увеличиваем значение временной переменной $td
      
$td++;
      
// Если временная переменная $td принимает значение
      // равное $numphoto, следовательно строка завершена, и необходимо
      // вывести завершающий тэг </tr>, а значение самой
      // переменной обнулить
      
if ($td == $numphoto)
      {
        echo 
"</tr>";
        
$td 0;
      }         
    }
  }
?></table>

  Ответить  
 
 автор: cheops   (30.03.2011 в 13:55)   письмо автору
 
   для: RobotWerder   (30.03.2011 в 13:47)
 

Если у вас все-таки wallist, тогда переменная $image должна выглядеть так
<?php 
 $image 
"<a href='picture/large/".$par['path']."' title='Увеличенное изображение'>".  
              
"<img src='picture/small/".$par['path']."' border='0' vspace='3' />"
              
"</a>"
?> 

  Ответить  
 
 автор: cheops   (30.03.2011 в 13:53)   письмо автору
 
   для: RobotWerder   (30.03.2011 в 13:47)
 

Выберите любое изображение в папке small и подставьте его в путь
liline.ru/wallist_mysql/picture/small/любое_изображени.jpg
Оно отображается?

  Ответить  
 
 автор: RobotWerder   (30.03.2011 в 13:47)   письмо автору
 
   для: cheops   (30.03.2011 в 13:35)
 

Да , все верно..именно тот скрипт..
он расположен в папке www
то есть в корне
liline.ru/www/v.php

  Ответить  
 
 автор: cheops   (30.03.2011 в 13:35)   письмо автору
 
   для: RobotWerder   (30.03.2011 в 13:14)
 

Понятно, т.е. вы используете скрипт из сообщения cheops (28.03.2011 в 17:28)? Где, относительно корня сайта у вас он расположен?

  Ответить  

Сообщения:  [1-10]    [11-20]   [21-30]   [31-40]  [41-46] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования