PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (8): « 1 2 3 [4] 5 6 7 8 »

> Найдено сообщений: 108
allforweb Отправлено: 07 Декабря, 2010 - 16:05:13 • Тема: Как отключить Tinymce для отдельного поля? • Форум: HTML, Дизайн & CSS

Ответов: 8
Просмотров: 4562
Uchkuma пишет:
Это, видимо, применительно к какой-то CMS?

Нет не для СМС, вот просто столкнулся с такой проблемкой, а решения нет.

Вот ссылку кинули на мануа по этой теме:
http://wiki[dot]moxiecode[dot]com/index[dot][dot][dot][dot]nfiguration/mode
allforweb Отправлено: 07 Декабря, 2010 - 15:37:06 • Тема: Как отключить Tinymce для отдельного поля? • Форум: HTML, Дизайн & CSS

Ответов: 8
Просмотров: 4562
Не могу нигде найти информацию. Можно ли отключать визуальный редактор Tinymce для отдельного текстового поля?
allforweb Отправлено: 06 Декабря, 2010 - 22:49:39 • Тема: проверка данных • Форум: SQL и Архитектура БД

Ответов: 19
Просмотров: 112
Мелкий пишет:
А вернёт он всегда 1 строку.

Я уже понял, она даже с пустой таблицы возвращает 1.
PHP:
скопировать код в буфер обмена
  1.  
  2. $double = mysql_query("SELECT COUNT(*) FROM rssnews WHERE link='$link'");
  3. $num_rows = mysql_num_rows($double);
  4. if($num_rows == 0)
  5.  

Если он всегда возвращает 1 - может тогда ставить:
if($num_rows == 1)
allforweb Отправлено: 06 Декабря, 2010 - 16:31:25 • Тема: mysql_affected_rows в цикле foreach • Форум: Программирование на PHP

Ответов: 1
Просмотров: 259
Как правильно посчитать количество добавленных записей в базу через цикл foreach? Я прохожу парсером про РСС каналам и не пойму как же посчитать количество добавленных записей? Цикл у меня получается вложенный. Обходит все каналы, а потом обходит все новости в каждом канале.
allforweb Отправлено: 06 Декабря, 2010 - 16:30:27 • Тема: проверка данных • Форум: SQL и Архитектура БД

Ответов: 19
Просмотров: 112
Мелкий пишет:
0) как пробуете

Вот код мой:
PHP:
скопировать код в буфер обмена
  1.  
  2. $double = mysql_query("SELECT COUNT(*) FROM rssnews WHERE link='$link'");
  3. // узнаю сколько у меня полей link идентичных $link
  4.          if(mysql_num_rows($double, 0) == 0)
  5. //если полей нету, т.е. ==0 заношу в базу запись и именно в этой линии ошибка
  6.          {
  7.          $result = mysql_query ("INSERT INTO rssnews (`title`, `description`, `image`, `link`, `date`)
  8.         VALUES ('$title', '$description', '$imagename', '$link',  NOW())");
  9.           }
  10.  


Это у меня парсер, в цикле. А записи дублирующиеся все-равно добавляются, только ошибка вылазит:
Warning: Wrong parameter count for mysql_num_rows()
И ошибка именно в этой линии if(mysql_num_rows($double, 0) == 0)
allforweb Отправлено: 06 Декабря, 2010 - 14:57:10 • Тема: Нюансы использования microtime • Форум: Программирование на PHP

Ответов: 18
Просмотров: 1465
Мелкий пишет:
Так что лучше делать наоборот:
создавать запись в бд (поле имени файла дропнуть за ненадобностью)
получить последний добавленный id
прибавлять к нему расширение
сохранять картинку под таким именем.

А можно подробнее? С кодом? Есть автоикремент у таблицы со спарсенными новостями - id, заголовок, описание, картинка, дата, источник. Как дать картинке имя ID+префикс я даже не знаю.
allforweb Отправлено: 06 Декабря, 2010 - 00:46:31 • Тема: Нюансы использования microtime • Форум: Программирование на PHP

Ответов: 18
Просмотров: 1465
Может кто-то сможет помочь мне решить эту задачу не только теоретически, а практически, показать код, который будет работать?

Задача вроде простая, но я ее решить пока не могу:

    картинка копируется парсером в цикле очень быстро
    парсим картинку - копируем в каталог - сразу даем ей новое уникальное имя (это у меня делается одной строкой)
    новое уникальное имя нужно загнать в БД


Как из этой строки можно получить только новое уникальное имя файла?
PHP:
скопировать код в буфер обмена
  1. copy ("http://".$img_src[1],$uploadimage.substr(md5(microtime()), 11).".jpg");
  2. //копирую картинку с удаленного сервера - указываю путь к папке с изображениями - и даю картинке новое уникальное имя используя функцию microtime
allforweb Отправлено: 05 Декабря, 2010 - 20:20:00 • Тема: Нюансы использования microtime • Форум: Программирование на PHP

Ответов: 18
Просмотров: 1465
DeepVarvar пишет:
allforweb единственная ошибка в существующем коде - это повторное создание рандом-имени...

Это я уже понял. $newname = md5(microtime()) - а можно подробнее код написать?
Вот так верно будет?
PHP:
скопировать код в буфер обмена
  1.  
  2. copy ("http://".$img_src[1],$uploadimage.substr(md5(microtime()), 11).".jpg");
  3. //копирую картинку с удаленного сервера и даю новое имя
  4. $imagename = md5(microtime())".jpg";
  5. //копирую новое имя файла в переменную
  6.  
  7. //здесь уже можно не обрабатывать?
  8. $imagename = basename ($imagename);
  9. //обрабатываю чтобы получить чистое имя файла.
  10.  
allforweb Отправлено: 04 Декабря, 2010 - 21:21:43 • Тема: Нюансы использования microtime • Форум: Программирование на PHP

Ответов: 18
Просмотров: 1465
А можно поподробнее? Только не забывайте что это парсер.
allforweb Отправлено: 04 Декабря, 2010 - 01:06:58 • Тема: Нюансы использования microtime • Форум: Программирование на PHP

Ответов: 18
Просмотров: 1465
При парсинге новостей парсю отдельно изображения. Все делаю в цикле. Чтобы дать изображениям новые уникальные имена использовал функцию time, но столкнулся с такой проблемой, что некоторые картинки имеют одинаковые названия. Попробовал функцию microtime и получилось что в базу записываются изображения с одним названием, а в папку загрузки с другим.

Вот код
PHP:
скопировать код в буфер обмена
  1. copy ("http://".$img_src[1],$uploadimage.substr(md5(microtime()), 11).".jpg");
  2. //копирую картинку с удаленного сервера и даю новое имя
  3. $imagename = $uploadimage.substr(md5(microtime()), 11).".jpg";
  4. //копирую новое имя файла в переменную
  5. $imagename = basename ($imagename);
  6. //обрабатываю чтобы получить чистое имя файла.


Как правильно перехватить новое имя файла при копировании?
allforweb Отправлено: 04 Декабря, 2010 - 01:00:11 • Тема: проверка данных • Форум: SQL и Архитектура БД

Ответов: 19
Просмотров: 112
Мелкий пишет:
Ну правильно, mysql_result пытается получить значение поля, а его нет! Вот и жалуется на такую несправедливость.

проверяйте через mysql_num_rows


Warning: Wrong parameter count for mysql_num_rows()
Все равно ошибку выдает.
allforweb Отправлено: 03 Декабря, 2010 - 17:25:02 • Тема: проверка данных • Форум: SQL и Архитектура БД

Ответов: 19
Просмотров: 112
А подскажите правильный ли такой запрос будет?
PHP:
скопировать код в буфер обмена
  1. $double = mysql_query("SELECT link FROM rssnews WHERE link='$link'");
  2.          if(mysql_result($double, 0) == 0)
  3.          {
  4.          $result = mysql_query ("INSERT INTO rssnews (`title`, `description`, `image`, `link`, `date`)
  5.         VALUES ('$title', '$description', '$imagename', '$link',  NOW())");
  6.           }


Я здесь ставлю условие если равно 0. Проверяю есть ли такой линк в базе и если его нет, т.е. 0 делаю инсерт, в противном случае ничего не делаю? Выдает ошибку

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 117 in
allforweb Отправлено: 02 Декабря, 2010 - 21:05:54 • Тема: Укажите на ошибку в if else • Форум: Программирование на PHP

Ответов: 6
Просмотров: 362
ALEN пишет:
раздражает когда не выставляют { }


Так два варианта же писал. И так и эдак, думал в этом причина.
allforweb Отправлено: 02 Декабря, 2010 - 20:45:21 • Тема: Укажите на ошибку в if else • Форум: Программирование на PHP

Ответов: 6
Просмотров: 362
Модуль «Добаление и редактирование новости». Есть два чекбокса, которые отвечают за активность новости и ее фиксации. Если чекбокс отмечен то показываем новость и фиксируем ее при выводе, если нет то не показываем и не фиксируем. В БД организовано все так:
active tinyint(1) записываем в поле 1 – новость показывается, если 0 – не показывается
fixed tinyint(1) записываем в поле 1 – новость фиксирована, если 0 – не фиксирована

Проблема вылазит при редактировании. Я хочу чтобы чекбокс был отмечен или не отмечен при редактировании новости. И сделал вот такой проверяющий код:

PHP:
скопировать код в буфер обмена
  1. if( $myrow['active'] == 1) {$checked = "checked='checked'";} else {$checked ="";}
  2. if( $myrow['fixed'] == 1)  {$checked = "checked='checked'";} else {$checked ="";}
  3.  
  4. как вариант еще так писал:
  5. if( $myrow['active'] == 1) $checked = "checked='checked'"; else $checked ="";
  6. if( $myrow['fixed'] == 1)  $checked = "checked='checked'"; else $checked ="";
  7.  
  8. echo $myrow['active']; //выводит 0
  9. echo $myrow['fixed']; // выводит 1

А при редактировании новости этот код не срабатывает. Или все отмечено, или все не отмечено, а данные разные.
allforweb Отправлено: 25 Ноября, 2010 - 13:35:17 • Тема: Ошибка при копировании файла через copy. • Форум: Программирование на PHP

Ответов: 6
Просмотров: 502
Мелкий пишет:
allforweb пишет:
Если я правильно понял сам файл нужно искать во временной папкке а не в переменной?

Зависит от того, как файл получен. Если курлом/сокетами/файловыми функциями(в случае успеха) - то в переменной.
Посмотрите, что вернул file_get_contents. Скорей всего - false, если file_put_contents не получается. Если не false, то что там?

allforweb пишет:
Как тогда найти изображение в массиве $_FILES если в переменной его нет?

Там и не должно быть. Этот массив только для аплоада из формы.


Все разобрался, вот так надо было, просто и коротко
copy ("http://".$img_src[1],$uploadimage.substr(md5(microtime()), 11).".jpg");

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

Страниц (8): « 1 2 3 [4] 5 6 7 8 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB