Здравствуйте, гость ( Вход | Регистрация )

24 страниц V  « < 21 22 23 24 >  
Ответить в данную темуНачать новую тему
> PHP | Вопросы и ответы, а так же всему что с ним связано
Рейтинг 5 V
neter
сообщение 14.11.2007 - 21:16

Постоялец форума
*****
орден IV степениорден I степени
Группа: Участник
Сообщений: 739
Регистрация: 29.09.2003
Пользователь №: 50


Не работает постраничный вывод из базы =((

Цитата
<?php

$num_limith="5"; // задаем количество результатов по выборке данных на страницу
$result1 = mysql_query("SELECT * FROM article WHERE year=$year ORDER BY number");
$num_rows = mysql_num_rows($result1);
///


$abstracts_result=mysql_query("SELECT * FROM article WHERE year=$year ORDER BY number LIMIT 0, $num_limith");
while($abstracts_row=mysql_fetch_array($abstracts_result))
show_preprint_info($abstracts_row,$year,$id_article);

////

// получаем номер страницы

if (isset($_GET['page'])) $page=($_GET['page']-1);
else $page=0;

// вычисляем первый оператор для LIMIT
$start=abs($page*$num_limith);

// составляем запрос и выводим записи
// переменную $start используем, как нумератор записей.
$q="SELECT * FROM article WHERE year=$year ORDER BY number LIMIT $start,$num_limith";
$res=mysql_query($q);
while($row=mysql_fetch_array($res))
{
// echo ++$start.". ".$row['field']."<br>\n";
}

// дальше выводим ссылки на страницы:
$q="SELECT count(*) FROM article WHERE year=$year";
$res=mysql_query($q);
$row=mysql_fetch_row($res);
$num_rows=$row[0];
$num_pages=ceil($num_rows/$num_limith); // получаем количество страниц $num_pages - количество получившихся страниц


for($i=1;$i<=$num_pages;$i++)
{
if ($i-1 == $page) {
echo "<br/><br/><br/>";
echo $i." ";
} else {
echo '&nbsp;&nbsp;<a href="content.php?ask='.$cont.'&year='.$year.'&page='.$i.'">'.$i."</a>";

}
}


?>


Результат работы скрипта.
Ссылки на получающиеся страницы выводятся правильно, а вот запрос из базы работает неправильно как будто только "SELECT * FROM article WHERE year=$year ORDER BY number LIMIT 0, $num_limith" работает.

Нужно, чтобы результат вывода на второй странице, был с 5го по 10й "article" из находящихся в базе

sad.gif в чем может быть проблема ... ?

Сообщение отредактировано neter - 14.11.2007 - 21:22
Перейти в начало страницы
 
+Цитировать сообщение
BamBr
сообщение 15.11.2007 - 10:05
Продвинутый новичок
**

Группа: Участник
Сообщений: 72
Регистрация: 11.07.2006
Пользователь №: 14394


Цитата(neter @ 14.11.2007 - 21:16) *
Не работает постраничный вывод из базы =((
Результат работы скрипта.
Ссылки на получающиеся страницы выводятся правильно, а вот запрос из базы работает неправильно как будто только "SELECT * FROM article WHERE year=$year ORDER BY number LIMIT 0, $num_limith" работает.

Нужно, чтобы результат вывода на второй странице, был с 5го по 10й "article" из находящихся в базе

sad.gif в чем может быть проблема ... ?



Из прошлого ...

$ncat - типа номер раздела
$num_page - типа количество ссылок на странице
кажется из неизвестного все
раньше вроде работало ))

Код
$query="select count(id) as total from catalog where id='$ncat'";
$result=mysql_query($query);
$row=mysql_fetch_array($result);
$total=$row['total'];
if($total%$num_page==0){$end=$total/$num_page-1;}
if($total%$num_page!=0){$end=$total/$num_page;}
for($i=0;$i<=$end;$i++){
  if($nstr!=$i){echo " [ <a href=\"".$addr_str."ncat=$ncat&nstr=$nstr\">".($i+1)."</a> ] ";}
  if($nstr==$i){echo " [ <b>".($i+1)."</b> ] ";}
  }
$start=$nstr*($num_page);
echo "<br><br>";
$query="select url,button,code from catalog where part_id='$ncat' order by catalog_4dogs_links_id limit $start,$num_page";
$result=mysql_query($query);
$num_rows=mysql_num_rows($result);
if($num_rows==0){echo "Записей нет";}
if($num_rows!=0){
  for($i=0;$i<=$num_rows-1;$i++){
    $turl=mysql_result($result,$i,'url');
    $tbutton=mysql_result($result,$i,'button');
    $tcode=mysql_result($result,$i,'code');
    echo "$turl<br>".html_entity_decode($tbutton)." | ".html_entity_decode($tcode)."<br><br>";
    }
  }


Сообщение отредактировано BamBr - 15.11.2007 - 10:11
Перейти в начало страницы
 
+Цитировать сообщение
ReMaG
сообщение 8.03.2008 - 13:38

Частый гость
***

Группа: Участник
Сообщений: 126
Регистрация: 29.05.2006
Пользователь №: 13817


Здравствуйте!

Вопрос, есть php скрипт, изложение полного скрипта я опущу. В нем есть два поля для ввода login и password.
Соответственно код на приеме данных:
Код
if(isset($HTTP_POST_VARS["login"]) && isset($HTTP_POST_VARS["password"]))


Как нужно сформировать запрос в строке браузера чтобы сразу войти со своим идентификатором ?

Вот что я пробовал писать:
Цитата


Как будет правильно ?
Перейти в начало страницы
 
+Цитировать сообщение
Micro Ice
сообщение 8.03.2008 - 15:21

Звезда форума
******
кубок за победу в конкурсах Форума
Группа: Участник
Сообщений: 1009
Регистрация: 26.04.2006
Пользователь №: 13250


Никак, нужно делать post запрос наподобии
Код
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://site.ru/login.php');
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, "login_name=test&passwd=test");
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec ($ch);
echo $result;
Перейти в начало страницы
 
+Цитировать сообщение
ReMaG
сообщение 8.03.2008 - 16:22

Частый гость
***

Группа: Участник
Сообщений: 126
Регистрация: 29.05.2006
Пользователь №: 13817


А где этот запрос прописывать?
Перейти в начало страницы
 
+Цитировать сообщение
Micro Ice
сообщение 8.03.2008 - 17:49

Звезда форума
******
кубок за победу в конкурсах Форума
Группа: Участник
Сообщений: 1009
Регистрация: 26.04.2006
Пользователь №: 13250


В другом скрипте или можно программу отдельную написать.
Перейти в начало страницы
 
+Цитировать сообщение
Bukich
сообщение 4.04.2008 - 22:51

Именно так...
*******
14 лет с форумомкубок за победу в конкурсах Форумаорден I степениорден I степениза помощь в дорогекубок за победу в конкурсах Форума
Орден имени Чингачгука Большого ЗмеяОтличительный знак Горсеть
Группа: Участник
Сообщений: 4602
Регистрация: 29.04.2004
Пользователь №: 3364


Делаем сайт с друзьями. Юзер заполняет анкету, типо этой : ]]>http://moi-sviter.net/bl.html]]> - вот , короче над чтоб когда всё это заполнялось - нажимаешь "СДЕЛАТЬ ЗАКАЗ" и на почту отправлялось всё то что заполнили... как сделать ? 0_о

Подскажите дурачку wink.gifsmile.gif
Перейти в начало страницы
 
+Цитировать сообщение
BamBr
сообщение 4.04.2008 - 23:59
Продвинутый новичок
**

Группа: Участник
Сообщений: 72
Регистрация: 11.07.2006
Пользователь №: 14394


Цитата(Bukich @ 4.04.2008 - 23:51) *
Делаем сайт с друзьями. Юзер заполняет анкету, типо этой : ]]>http://moi-sviter.net/bl.html]]> - вот , короче над чтоб когда всё это заполнялось - нажимаешь "СДЕЛАТЬ ЗАКАЗ" и на почту отправлялось всё то что заполнили... как сделать ? 0_о

Подскажите дурачку wink.gifsmile.gif


mail();
]]>http://www.php.ru/manual/function.mail.html]]>
Перейти в начало страницы
 
+Цитировать сообщение
avtor
сообщение 5.04.2008 - 09:45

Постоялец форума
*****

Группа: Участник
Сообщений: 978
Регистрация: 15.04.2004
Пользователь №: 3224


В простейшем случае cначала получаешь значения полей формы:

<?php
$f1=$_POST['F1'];
$f2=$_POST['F2'];
и т.д.
$text=$f1."\r\n".$f2;

Потом отправляешь письмо на свой адрес:

mail($address, $subject, $text)
?>

$address - e-mail получателя письма;
$subject - тема письма.

Желательно еще установить контент-тип и кодировку текста письма.
Перейти в начало страницы
 
+Цитировать сообщение
Eldy
сообщение 17.04.2008 - 10:24

Частый гость
***

Группа: Участник
Сообщений: 196
Регистрация: 4.09.2006
Пользователь №: 15165


Цитата(avtor @ 5.04.2008 - 10:45) *
В простейшем случае cначала получаешь значения полей формы:

<?php
$f1=$_POST['F1'];
$f2=$_POST['F2'];
и т.д.
$text=$f1."\r\n".$f2;

Потом отправляешь письмо на свой адрес:
mail($address, $subject, $text)
?>
$address - e-mail получателя письма;
$subject - тема письма.
Желательно еще установить контент-тип и кодировку текста письма.


ох хорошо.. ))) люблю я "Конструктора сайтов" за прямые и точные ответы, инфоративность строк и красоту кода..
человек теперь через 2 года догадается, что в mail() есть ещё и 4й аргумент, а subj надо перекодировать smile.gif
----------
mail();
]]>http://www.php.ru/manual/function.mail.html]]>
Перейти в начало страницы
 
+Цитировать сообщение
avtor
сообщение 17.04.2008 - 10:41

Постоялец форума
*****

Группа: Участник
Сообщений: 978
Регистрация: 15.04.2004
Пользователь №: 3224


Цитата(Eldy @ 17.04.2008 - 11:24) *
ох хорошо.. ))) люблю я "Конструктора сайтов" за прямые и точные ответы, инфоративность строк и красоту кода..
человек теперь через 2 года догадается, что в mail() есть ещё и 4й аргумент, а subj надо перекодировать smile.gif

Ну так и "разжевал" бы человеку все подробно.
А если бы ты внимательно смотрел, то заметил бы, что до тебя еще BamBr дал Bukich'у ссылку на мануал. Или так хотелось выпендрится, что некогда было просматривать другие сообщения?
Эх ты, горе-умник...
Перейти в начало страницы
 
+Цитировать сообщение
Eldy
сообщение 17.04.2008 - 11:26

Частый гость
***

Группа: Участник
Сообщений: 196
Регистрация: 4.09.2006
Пользователь №: 15165


не, я ссылку видел и специально продублировал..
дабы не искушался он на твой код
Перейти в начало страницы
 
+Цитировать сообщение
CaH4oO
сообщение 1.07.2008 - 12:51

Частый гость
***

Группа: Участник
Сообщений: 141
Регистрация: 18.03.2005
Пользователь №: 7039


Надо вывести все строки таблицы.
есть стандартный запрос:
$query="select * from table where ".$searchtype." like '%".$searchterm."%';

как сделать что бы $searchterm - обозначал абсолютно любой символ, слышал вроде как то с использованием "#" делаеться, но как точно (?)
Перейти в начало страницы
 
+Цитировать сообщение
rz3ajd
сообщение 1.07.2008 - 13:13
Частый гость
***

Группа: Участник
Сообщений: 293
Регистрация: 5.04.2005
Пользователь №: 7341


Цитата(CaH4oO @ 1.07.2008 - 13:51) *
Надо вывести все строки таблицы.
есть стандартный запрос:
$query="select * from table where ".$searchtype." like '%".$searchterm."%';

как сделать что бы $searchterm - обозначал абсолютно любой символ, слышал вроде как то с использованием "#" делаеться, но как точно (?)


SELECT * FROM table
WHERE column LIKE '%%%'
Перейти в начало страницы
 
+Цитировать сообщение
Bolt Thrower
сообщение 1.07.2008 - 14:00

Частый гость
***

Группа: Участник
Сообщений: 233
Регистрация: 4.01.2006
Пользователь №: 11329


любой единичный символ - '_'
Цитата
SELECT * FROM table
WHERE column LIKE '%%%'

три раза это чтоб наверняка?)) а если не секрет, зачем там вообще WHERE?
и зачем нужны какие-то условия, если не нужно ничего фильтровать и требуется вывести ВСЕ строки таблицы, что это за бред?
Перейти в начало страницы
 
+Цитировать сообщение
rz3ajd
сообщение 1.07.2008 - 15:21
Частый гость
***

Группа: Участник
Сообщений: 293
Регистрация: 5.04.2005
Пользователь №: 7341


Цитата(Shuvalov @ 1.07.2008 - 15:00) *
три раза это чтоб наверняка?)) а если не секрет, зачем там вообще WHERE?
и зачем нужны какие-то условия, если не нужно ничего фильтровать и требуется вывести ВСЕ строки таблицы, что это за бред?


Исходный вопрос был что подставить вместо var в конструкцию LIKE '%' || var || '%' чтобы нашлись все строки.
Перейти в начало страницы
 
+Цитировать сообщение
CaH4oO
сообщение 1.07.2008 - 18:47

Частый гость
***

Группа: Участник
Сообщений: 141
Регистрация: 18.03.2005
Пользователь №: 7039


Составил запрос такого вида:
$query="select * from table";
Всё работает blink.gif

Сообщение отредактировано CaH4oO - 1.07.2008 - 18:55
Перейти в начало страницы
 
+Цитировать сообщение
suvorov
сообщение 11.07.2008 - 19:06

Энтузиаст
****
орден I степени
Группа: Участник
Сообщений: 397
Регистрация: 5.12.2004
Пользователь №: 5634


Люди, вообщем интересует следующие:

Частенько возникают проблемы с mysql на сервере, сервер выдаёт ошибку, как под каждую ошибку сделать страницу для отображения. К примеру: ошибка system error: 111, как сделать так, что бы отображался составленый html/PHP документ, а не сама ошибка?
Перейти в начало страницы
 
+Цитировать сообщение
SHADE
сообщение 12.07.2008 - 11:25

Bill rulz ^^
******
орден IV степени
Группа: Участник
Сообщений: 1418
Регистрация: 28.09.2003
Пользователь №: 24


Заворачиваешь работу с mysql в try-catch, ловишь эксепшены, анализируешь, отрабатываешь их как душе угодно


Если вдруг в пхп есть глобальный хэндлер эксепшенов, предпочтительнее использовать его, т.к. в этом случае тебе в своем коде ничего не придется менять -- все эксепшены будут ловиться в одном месте.

Сообщение отредактировано SHADE - 12.07.2008 - 11:25
Перейти в начало страницы
 
+Цитировать сообщение
Foxtrot
сообщение 19.07.2008 - 02:57

Энтузиаст
****

Группа: Участник
Сообщений: 302
Регистрация: 25.12.2005
Пользователь №: 11189


Подскажите, вот значит куски кода:
С Бд всё ок соединяется.

Код
$link = mysql_connect("*****", "****", "****") or die("Сообщите Администратору. Ошибка #0001");$dbname = "***";mysql_select_db($dbname, $link) or die("Сообщите Администратору. Ошибка #0002");


Запрос тоже выполняется ок:
Код
$result = mysql_query("INSERT INTO `users` VALUES ('$login', '$pass', '$email', '$vopros', '$otvet')", $link) or die("Сообщите Администратору. Ошибка #0003");

Проблема такова, что на локальном компе всеработает, а при заливке на хостинг — нет. На хостинге с БД всё ок соединяется. но при попытке зарегистрироваться — запрос не выполняется sad.gif
А например смена пароля работает...
Код
$sql="UPDATE `".$dbname."`.`users` SET `password` = '".$newpass."' WHERE CONVERT( `users`.`login` USING utf8 ) = '".$login."' LIMIT 1";$result=mysql_query($sql) or die("Сообщите Администратору. Ошибка #0004");


Уже не знаю, что и думать... на компе всё ок. на хостинге нет. новые значения в бд не добавляются. а старые норм. редактируются. права на скрипты 755. 
 

Сообщение отредактировано Foxtrot - 19.07.2008 - 03:00
Перейти в начало страницы
 
+Цитировать сообщение

24 страниц V  « < 21 22 23 24 >
Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 17.12.2025 - 10:48