Да, я насколько там понял, сервер типа сам размножает обработчик!? Но мне не совсем понятно как будет подставляться переменная для того что бы каждое фото вносилось в базу в нужное поле БД!
St.I.An: <? for($i = 1; isset($_POST["fupload".(($i > 1) ? $i : '')]); $i++) { .. // тут большой код :) } ? ?>
Вот мой код
if (empty($_FILES['fupload']['name'])) { //если переменная пустая (пользователь не отправил изображение) echo '<br><strong>Вы не выбрали фото для загрузки.</strong><br><br><a href="'.$_SERVER['HTTP_REFERER'].'"> <<< Назад</a>'; }
else { //иначе - загружаем изображение пользователя для обновления $path_to_90_directory = 'useruploads/album/';//папка, куда будет загружаться начальная картинка и ее копия
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)|(gif)|(GIF)|(png)|(PNG)$/',$_FILES['fupload']['name']))//проверка формата исходного изображения {
if(preg_match('/[.](GIF)|(gif)$/', $filename)) { $im = imagecreatefromgif($path_to_90_directory.$filename) ; //если оригинал был в формате gif, то создаем изображение в этом же формате. Необходимо для последующего сжатия } if(preg_match('/[.](PNG)|(png)$/', $filename)) { $im = imagecreatefrompng($path_to_90_directory.$filename) ;//если оригинал был в формате png, то создаем изображение в этом же формате. Необходимо для последующего сжатия }
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)$/', $filename)) { $im = imagecreatefromjpeg($path_to_90_directory.$filename); //если оригинал был в формате jpg, то создаем изображение в этом же формате. Необходимо для последующего сжатия }
//СОЗДАНИЕ КВАДРАТНОГО ИЗОБРАЖЕНИЯ И ЕГО ПОСЛЕДУЮЩЕЕ СЖАТИЕ
// Создание квадрата // dest - результирующее изображение // w - ширина изображения // ratio - коэффициент пропорциональности
$w = 130; // квадратная. Можно поставить и другой размер.
// создаём исходное изображение на основе // исходного файла и определяем его размеры $w_src = imagesx($im); //вычисляем ширину $h_src = imagesy($im); //вычисляем высоту изображения
// создаём пустую квадратную картинку // важно именно truecolor!, иначе будем иметь 8-битный результат $dest = imagecreatetruecolor($w,$w);
// вырезаем квадратную серединку по x, если фото горизонтальное if ($w_src>$h_src) imagecopyresampled($dest, $im, 0, 0, round((max($w_src,$h_src)-min($w_src,$h_src))/2), 0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// вырезаем квадратную верхушку по y, // если фото вертикальное (хотя можно тоже серединку) if ($w_src<$h_src) imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// квадратная картинка масштабируется без вырезок if ($w_src==$h_src) imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, $w_src, $w_src);
$date=time(); //вычисляем время в настоящий момент. imagejpeg($dest, $path_to_90_directory.$date.".jpg");//сохраняем изображение формата jpg в нужную папку, именем будет текущее время. Сделано, чтобы не было одинаковых имен.
$foto = $path_to_90_directory.$date.".jpg";//заносим в переменную путь до аватара. $delfull = $path_to_90_directory.$filename; unlink ($delfull);//удаляем оригинал загруженного изображения, он нам больше не нужен. Задачей было - получить миниатюру } else { //в случае несоответствия формата, выдаем соответствующее сообщение exit ("Фото должно быть в формате <strong>JPG,GIF или PNG</strong>"); }
}
$user_id = $myrow2["id"]; /* Можно заносить в базу */ $result = mysql_query ("INSERT INTO name_foto (user_id, name, foto) VALUES ('$user_id', '$name', '$foto')");
$result22 = mysql_query("SELECT id FROM name_foto WHERE foto='$foto'",$db); $myrow22 = mysql_fetch_array($result22);
if(preg_match('/[.](GIF)|(gif)$/', $filename2)) { $im = imagecreatefromgif($path_to_90_directory.$filename2) ; //если оригинал был в формате gif, то создаем изображение в этом же формате. Необходимо для последующего сжатия } if(preg_match('/[.](PNG)|(png)$/', $filename2)) { $im = imagecreatefrompng($path_to_90_directory.$filename2) ;//если оригинал был в формате png, то создаем изображение в этом же формате. Необходимо для последующего сжатия }
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)$/', $filename2)) { $im = imagecreatefromjpeg($path_to_90_directory.$filename2); //если оригинал был в формате jpg, то создаем изображение в этом же формате. Необходимо для последующего сжатия }
//СОЗДАНИЕ ВТОРОГО КВАДРАТНОГО ИЗОБРАЖЕНИЯ И ЕГО ПОСЛЕДУЮЩЕЕ СЖАТИЕ
// Создание квадрата // dest - результирующее изображение // w - ширина изображения // ratio - коэффициент пропорциональности
$w = 130; // квадратная. Можно поставить и другой размер.
// создаём исходное изображение на основе // исходного файла и определяем его размеры $w_src = imagesx($im); //вычисляем ширину $h_src = imagesy($im); //вычисляем высоту изображения
// создаём пустую квадратную картинку // важно именно truecolor!, иначе будем иметь 8-битный результат $dest = imagecreatetruecolor($w,$w);
// вырезаем квадратную серединку по x, если фото горизонтальное if ($w_src>$h_src) imagecopyresampled($dest, $im, 0, 0, round((max($w_src,$h_src)-min($w_src,$h_src))/2), 0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// вырезаем квадратную верхушку по y, // если фото вертикальное (хотя можно тоже серединку) if ($w_src<$h_src) imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// квадратная картинка масштабируется без вырезок if ($w_src==$h_src) imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, $w_src, $w_src);
$date=time(); //вычисляем время в настоящий момент. imagejpeg($dest, $path_to_90_directory.$date.".jpg");//сохраняем изображение формата jpg в нужную папку, именем будет текущее время. Сделано, чтобы не было одинаковых имен.
$foto = $path_to_90_directory.$date.".jpg";//заносим в переменную путь до аватара.
if(preg_match('/[.](GIF)|(gif)$/', $filename3)) { $im = imagecreatefromgif($path_to_90_directory.$filename3) ; //если оригинал был в формате gif, то создаем изображение в этом же формате. Необходимо для последующего сжатия } if(preg_match('/[.](PNG)|(png)$/', $filename3)) { $im = imagecreatefrompng($path_to_90_directory.$filename3) ;//если оригинал был в формате png, то создаем изображение в этом же формате. Необходимо для последующего сжатия }
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)$/', $filename3)) { $im = imagecreatefromjpeg($path_to_90_directory.$filename3); //если оригинал был в формате jpg, то создаем изображение в этом же формате. Необходимо для последующего сжатия }
//СОЗДАНИЕ ВТОРОГО КВАДРАТНОГО ИЗОБРАЖЕНИЯ И ЕГО ПОСЛЕДУЮЩЕЕ СЖАТИЕ
// Создание квадрата // dest - результирующее изображение // w - ширина изображения // ratio - коэффициент пропорциональности
$w = 636; // квадратная. Можно поставить и другой размер.
// создаём исходное изображение на основе // исходного файла и определяем его размеры $w_src = imagesx($im); //вычисляем ширину $h_src = imagesy($im); //вычисляем высоту изображения
// создаём пустую квадратную картинку // важно именно truecolor!, иначе будем иметь 8-битный результат $dest = imagecreatetruecolor($w,$w);
// вырезаем квадратную серединку по x, если фото горизонтальное if ($w_src>$h_src) imagecopyresampled($dest, $im, 0, 0, round((max($w_src,$h_src)-min($w_src,$h_src))/2), 0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// вырезаем квадратную верхушку по y, // если фото вертикальное (хотя можно тоже серединку) if ($w_src<$h_src) imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// квадратная картинка масштабируется без вырезок if ($w_src==$h_src) imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, $w_src, $w_src);
$date=time(); //вычисляем время в настоящий момент. imagejpeg($dest, $path_to_90_directory.$date."_big.jpg");//сохраняем изображение формата jpg в нужную папку, именем будет текущее время. Сделано, чтобы не было одинаковых имен.
$foto_big = $path_to_90_directory.$date."_big.jpg";//заносим в переменную путь до аватара.
$delfull = $path_to_90_directory.$filename2; unlink ($delfull);//удаляем оригинал загруженного изображения, он нам больше не нужен. Задачей было - получить миниатюру
$post = $myrow22["id"]; /* Можно заносить в базу */ $result3 = mysql_query ("INSERT INTO foto_album (post, user_id, foto_big, foto) VALUES ('$post', '$user_id', '$foto_big', '$foto')");
if ($result and $result3 == 'true') {echo "<p><strong>Успешно добавлено.</strong></p>";} else {echo "<p><strong>Не добавлено.</strong></p>";}
первое изображение это картинка альбома, а все остальные 9 уже идут в альбом в отдельную таблицу. Делается миниатюра и большое.
Timen: Не понимаю в чем собственно проблема... В цикле называть поля для загрузки изображений, так же в цикле их обрабатывать и формировать запрос для записи в БД.
Я же и не спорю, что для вас это легко. А я пока еще не совсем гребу как что и где. Если не затрудник покажите пример!
nakama: Размещалась по тарифу "По графику". Рискнула размещать молодой сайт, статьи размещали постепенно, ТС учел все пожелания. Сами статьи читабельные, хорошо написаны и размножены. Заказала еще для трех сайтов размещение статей в каталогах. ТС, огромное спасибо!
Спасибо за отзыв, услугу предоставляем качественно.
Обновление базы
Добавлено в базу 80 новых каталогов, базу делаем как всегда качественную.
Интересно, тоже зашел на апорт так как при анализе сайтов увидел что некоторые попали в каталог апорта! Основной диз просто спокоен не раздражающий, а вот диз выдачи ужасный!
Ilekor добавил 12.11.2009 в 12:12
Shortlist: В 2000 году, кстати, Апорт был куплен за $25 млн. сумма по тем временам для интернета бешеная, Яндекс в то же время оценивался в $14 млн. И вот посмотрите на результат... Что значит получить владельца нихрена не соображающего в в том что он купил. Думаю, у Билайна, как и у Голден Телекома мало что получится.
Елена Бурдюгова, титл в ссылке это как бы помощь пользователь, можно туда вписать типа "Уважаемый пользователь нажмите вот сюда", Яндекс его не учитывает!
Да, я насколько там понял, сервер типа сам размножает обработчик!? Но мне не совсем понятно как будет подставляться переменная для того что бы каждое фото вносилось в базу в нужное поле БД!
SEXCRIME, С удовольствием попрошу остаться в теме, свой обработчик я выложил выше.
<?
for($i = 1; isset($_POST["fupload".(($i > 1) ? $i : '')]); $i++) {
.. // тут большой код :)
} ?
?>
Вот мой код
if (empty($_FILES['fupload']['name']))
{
//если переменная пустая (пользователь не отправил изображение)
echo '<br><strong>Вы не выбрали фото для загрузки.</strong><br><br><a href="'.$_SERVER['HTTP_REFERER'].'">
<<< Назад</a>';
}
else
{
//иначе - загружаем изображение пользователя для обновления
$path_to_90_directory = 'useruploads/album/';//папка, куда будет загружаться начальная картинка и ее копия
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)|(gif)|(GIF)|(png)|(PNG)$/',$_FILES['fupload']['name']))//проверка формата исходного изображения
{
$filename = $_FILES['fupload']['name'];
$source = $_FILES['fupload']['tmp_name'];
$target = $path_to_90_directory . $filename;
move_uploaded_file($source, $target);//загрузка оригинала в папку $path_to_90_directory
if(preg_match('/[.](GIF)|(gif)$/', $filename)) {
$im = imagecreatefromgif($path_to_90_directory.$filename) ; //если оригинал был в формате gif, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
if(preg_match('/[.](PNG)|(png)$/', $filename)) {
$im = imagecreatefrompng($path_to_90_directory.$filename) ;//если оригинал был в формате png, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)$/', $filename)) {
$im = imagecreatefromjpeg($path_to_90_directory.$filename); //если оригинал был в формате jpg, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
//СОЗДАНИЕ КВАДРАТНОГО ИЗОБРАЖЕНИЯ И ЕГО ПОСЛЕДУЮЩЕЕ СЖАТИЕ
// Создание квадрата
// dest - результирующее изображение
// w - ширина изображения
// ratio - коэффициент пропорциональности
$w = 130; // квадратная. Можно поставить и другой размер.
// создаём исходное изображение на основе
// исходного файла и определяем его размеры
$w_src = imagesx($im); //вычисляем ширину
$h_src = imagesy($im); //вычисляем высоту изображения
// создаём пустую квадратную картинку
// важно именно truecolor!, иначе будем иметь 8-битный результат
$dest = imagecreatetruecolor($w,$w);
// вырезаем квадратную серединку по x, если фото горизонтальное
if ($w_src>$h_src)
imagecopyresampled($dest, $im, 0, 0,
round((max($w_src,$h_src)-min($w_src,$h_src))/2),
0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// вырезаем квадратную верхушку по y,
// если фото вертикальное (хотя можно тоже серединку)
if ($w_src<$h_src)
imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w,
min($w_src,$h_src), min($w_src,$h_src));
// квадратная картинка масштабируется без вырезок
if ($w_src==$h_src)
imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, $w_src, $w_src);
$date=time(); //вычисляем время в настоящий момент.
imagejpeg($dest, $path_to_90_directory.$date.".jpg");//сохраняем изображение формата jpg в нужную папку, именем будет текущее время. Сделано, чтобы не было одинаковых имен.
$foto = $path_to_90_directory.$date.".jpg";//заносим в переменную путь до аватара.
$delfull = $path_to_90_directory.$filename;
unlink ($delfull);//удаляем оригинал загруженного изображения, он нам больше не нужен. Задачей было - получить миниатюру
}
else
{
//в случае несоответствия формата, выдаем соответствующее сообщение
exit ("Фото должно быть в формате <strong>JPG,GIF или PNG</strong>");
}
}
$user_id = $myrow2["id"];
/* Можно заносить в базу */
$result = mysql_query ("INSERT INTO name_foto (user_id, name, foto) VALUES ('$user_id', '$name', '$foto')");
$result22 = mysql_query("SELECT id FROM name_foto WHERE foto='$foto'",$db);
$myrow22 = mysql_fetch_array($result22);
$filename2 = $_FILES['fupload2']['name'];
$source = $_FILES['fupload2']['tmp_name'];
$target = $path_to_90_directory . $filename2;
move_uploaded_file($source, $target);//загрузка оригинала в папку $path_to_90_directory
if(preg_match('/[.](GIF)|(gif)$/', $filename2)) {
$im = imagecreatefromgif($path_to_90_directory.$filename2) ; //если оригинал был в формате gif, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
if(preg_match('/[.](PNG)|(png)$/', $filename2)) {
$im = imagecreatefrompng($path_to_90_directory.$filename2) ;//если оригинал был в формате png, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)$/', $filename2)) {
$im = imagecreatefromjpeg($path_to_90_directory.$filename2); //если оригинал был в формате jpg, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
//СОЗДАНИЕ ВТОРОГО КВАДРАТНОГО ИЗОБРАЖЕНИЯ И ЕГО ПОСЛЕДУЮЩЕЕ СЖАТИЕ
// Создание квадрата
// dest - результирующее изображение
// w - ширина изображения
// ratio - коэффициент пропорциональности
$w = 130; // квадратная. Можно поставить и другой размер.
// создаём исходное изображение на основе
// исходного файла и определяем его размеры
$w_src = imagesx($im); //вычисляем ширину
$h_src = imagesy($im); //вычисляем высоту изображения
// создаём пустую квадратную картинку
// важно именно truecolor!, иначе будем иметь 8-битный результат
$dest = imagecreatetruecolor($w,$w);
// вырезаем квадратную серединку по x, если фото горизонтальное
if ($w_src>$h_src)
imagecopyresampled($dest, $im, 0, 0,
round((max($w_src,$h_src)-min($w_src,$h_src))/2),
0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// вырезаем квадратную верхушку по y,
// если фото вертикальное (хотя можно тоже серединку)
if ($w_src<$h_src)
imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w,
min($w_src,$h_src), min($w_src,$h_src));
// квадратная картинка масштабируется без вырезок
if ($w_src==$h_src)
imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, $w_src, $w_src);
$date=time(); //вычисляем время в настоящий момент.
imagejpeg($dest, $path_to_90_directory.$date.".jpg");//сохраняем изображение формата jpg в нужную папку, именем будет текущее время. Сделано, чтобы не было одинаковых имен.
$foto = $path_to_90_directory.$date.".jpg";//заносим в переменную путь до аватара.
$filename3 = $_FILES['fupload2']['name'];
$source = $_FILES['fupload2']['tmp_name'];
$target = $path_to_90_directory . $filename3;
move_uploaded_file($source, $target);//загрузка оригинала в папку $path_to_90_directory
if(preg_match('/[.](GIF)|(gif)$/', $filename3)) {
$im = imagecreatefromgif($path_to_90_directory.$filename3) ; //если оригинал был в формате gif, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
if(preg_match('/[.](PNG)|(png)$/', $filename3)) {
$im = imagecreatefrompng($path_to_90_directory.$filename3) ;//если оригинал был в формате png, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)$/', $filename3)) {
$im = imagecreatefromjpeg($path_to_90_directory.$filename3); //если оригинал был в формате jpg, то создаем изображение в этом же формате. Необходимо для последующего сжатия
}
//СОЗДАНИЕ ВТОРОГО КВАДРАТНОГО ИЗОБРАЖЕНИЯ И ЕГО ПОСЛЕДУЮЩЕЕ СЖАТИЕ
// Создание квадрата
// dest - результирующее изображение
// w - ширина изображения
// ratio - коэффициент пропорциональности
$w = 636; // квадратная. Можно поставить и другой размер.
// создаём исходное изображение на основе
// исходного файла и определяем его размеры
$w_src = imagesx($im); //вычисляем ширину
$h_src = imagesy($im); //вычисляем высоту изображения
// создаём пустую квадратную картинку
// важно именно truecolor!, иначе будем иметь 8-битный результат
$dest = imagecreatetruecolor($w,$w);
// вырезаем квадратную серединку по x, если фото горизонтальное
if ($w_src>$h_src)
imagecopyresampled($dest, $im, 0, 0,
round((max($w_src,$h_src)-min($w_src,$h_src))/2),
0, $w, $w, min($w_src,$h_src), min($w_src,$h_src));
// вырезаем квадратную верхушку по y,
// если фото вертикальное (хотя можно тоже серединку)
if ($w_src<$h_src)
imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w,
min($w_src,$h_src), min($w_src,$h_src));
// квадратная картинка масштабируется без вырезок
if ($w_src==$h_src)
imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, $w_src, $w_src);
$date=time(); //вычисляем время в настоящий момент.
imagejpeg($dest, $path_to_90_directory.$date."_big.jpg");//сохраняем изображение формата jpg в нужную папку, именем будет текущее время. Сделано, чтобы не было одинаковых имен.
$foto_big = $path_to_90_directory.$date."_big.jpg";//заносим в переменную путь до аватара.
$delfull = $path_to_90_directory.$filename2;
unlink ($delfull);//удаляем оригинал загруженного изображения, он нам больше не нужен. Задачей было - получить миниатюру
$post = $myrow22["id"];
/* Можно заносить в базу */
$result3 = mysql_query ("INSERT INTO foto_album (post, user_id, foto_big, foto) VALUES ('$post', '$user_id', '$foto_big', '$foto')");
if ($result and $result3 == 'true') {echo "<p><strong>Успешно добавлено.</strong></p>";}
else {echo "<p><strong>Не добавлено.</strong></p>";}
первое изображение это картинка альбома, а все остальные 9 уже идут в альбом в отдельную таблицу. Делается миниатюра и большое.
Не понимаю в чем собственно проблема...
В цикле называть поля для загрузки изображений, так же в цикле их обрабатывать и формировать запрос для записи в БД.
Я же и не спорю, что для вас это легко. А я пока еще не совсем гребу как что и где. Если не затрудник покажите пример!
Размещалась по тарифу "По графику". Рискнула размещать молодой сайт, статьи размещали постепенно, ТС учел все пожелания. Сами статьи читабельные, хорошо написаны и размножены. Заказала еще для трех сайтов размещение статей в каталогах. ТС, огромное спасибо!
Спасибо за отзыв, услугу предоставляем качественно.
Обновление базы
Добавлено в базу 80 новых каталогов, базу делаем как всегда качественную.
Внимание!!!
Предновогодняя скидка для всех клиентов.
Заказывая любой тариф 10% скидка.
вроде так
Испытал, благодарю за помощь,
Немного подкоректировал, вместо нуля подставил двойку и код сразу выровнялся
$re = mysql_query("SELECT * FROM girls",$db);
$i=0;
while($rem=mysql_fetch_array($re))
{
if ($i==0) {echo "<div class=\"img_block\">";}
?>
<div class="item_ib">
<p class="foto_girl"><a href="#"><img src="<?=$rem['foto']?>" alt="" /></a></p>
<p class="name_girl"><a href="#"><?=$rem['name_girl'].", ".$rem['age']?></a></p>
</div>
<?
if ($i==2) {echo "</div>";}
$i++;
if ($i==3){$i=0;}
}
}
else {echo'';};
?>
Все отлично выводится!
Интересно, тоже зашел на апорт так как при анализе сайтов увидел что некоторые попали в каталог апорта! Основной диз просто спокоен не раздражающий, а вот диз выдачи ужасный!
Ilekor добавил 12.11.2009 в 12:12
В 2000 году, кстати, Апорт был куплен за $25 млн. сумма по тем временам для интернета бешеная, Яндекс в то же время оценивался в $14 млн. И вот посмотрите на результат... Что значит получить владельца нихрена не соображающего в в том что он купил. Думаю, у Билайна, как и у Голден Телекома мало что получится.
Не знал такого, та да, не плохо оценили!
вообще этот бан от хостера говорит о его компетентности. так что тут говорить нечего))ноги в руки и бежать.
Что за чушь вы несете! Причем здесь компетентность?
ilyasov, А вы любите мусор на дорогах?
Елена Бурдюгова, титл в ссылке это как бы помощь пользователь, можно туда вписать типа "Уважаемый пользователь нажмите вот сюда", Яндекс его не учитывает!