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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Wap Portal
 
 автор: Akira   (18.10.2004 в 21:33)   письмо автору
 
 

Привет! Я тут несколько недель бился на освоением php.
Написал небольшой wap сайт простой, и понятный.
Есть Гостевая - работает от бд.
Также Есть возможность добавления игр , рисунков, или мелодий.
Просто выбераем папку создаем каталог (на латинице) ссылки генерируються автоматом.
Прошу посмотреть указать на ошибки и пр.
http://mobileman.ru/files/mp001.rar
PS
Посмотреть как выглядит можно на http://mobileman.ru

   
 
 автор: вопрос_MYSQL   (22.10.2004 в 01:20)   письмо автору
 
   для: Akira   (18.10.2004 в 21:33)
 

Мне вот интересно как авторизация идет без кукисов?
Перадевать имя и пароль в URL если тока но что то этот метод меня не водушевляет :(
Как форум делать на вапе ???

Вот прочитал тему про phpclub И про что что вы такие сякие :(
Мое мнение только положительное! Отзываетесь на просьбу а не даете читай там там та (ну даете когда это действительно стоит дать если писаль ранее)
Спасибо вам.
А вот хотелось чтоб в вашей новой книги было то про что была написано осталось за бортом :) вот там был список книг я как раз купил книгу Агрелиха ... там еще туева туча авторов этой книги ...но хочется прочитать ваше издание ... ну а форум у вас все таки лучше чем у других авторов (по ответам на вопросы и результатам ответов и скорости ответов :)) тут равных вобще нет! ) может не в тему но назаметку в новой книге упомините о системе проверки орфографии в PHP я нашел это только в одной книги .

   
 
 автор: Akira   (22.10.2004 в 17:44)   письмо автору
 
   для: вопрос_MYSQL   (22.10.2004 в 01:20)
 

Я не очень понял к кому вопрос? =) Начнем с того что микробраузеры почти не поддерживают кукис (мне встречались кадры с поддержкой кукис).
Как делать форум? Да так и делать передачей по ссылке или через открытие ссесии.

   
 
 автор: Akira   (22.10.2004 в 20:21)   письмо автору
 
   для: Akira   (18.10.2004 в 21:33)
 

Вопрос возник...
База и массивы...
Отрывок кода:
while ($i<$max_mess) # Цикл проверки кол-ва строк для вывода их
{
$row_date = htmlspecialchars(mysql_result($result, $i, "date"));
$row_name = htmlspecialchars(mysql_result($result, $i, "name"));
$row_message = htmlspecialchars(mysql_result($result, $i, "message"));
echo "<br/>###<br/>";
echo "&#x0412;&#x0440;&#x0435;&#x043C;&#x044F;:&nbsp;".$row_date;
echo "<br/>";
echo "&#x0418;&#x043C;&#x044F;:&nbsp;".$row_name;
echo "<br/>";
echo "&#x0421;&#x043E;&#x043E;&#x0431;&#x0449;&#x0435;&#x043D;&#x0438;&#x0435;:&nbsp;".$row_message;
echo "<br/>";
$i++; # Добавление к $i  единицу
}

Кто сможет подсказать замену?

   
 
 автор: cheops   (22.10.2004 в 21:02)   письмо автору
 
   для: Akira   (22.10.2004 в 20:21)
 

Этот отрывок из архива?

   
 
 автор: cheops   (22.10.2004 в 21:15)   письмо автору
 
   для: cheops   (22.10.2004 в 21:02)
 

Ага, нашёл, я бы переписал файл read_mess.php следующим образом
<?php
  
include 'header.php';
  include 
'config.php';
  
// Определяем число сообщений в таблице
  
$query 'select count(*) from '.$db_table;
  
$tot mysql_query($query);
  if(!
$tot)
  {
    echo 
"Error! mysql_query".mysql_error();
    exit;
  }
  
$count mysql_result($tot,0);
  
// Выбираем сообщения из базы данных
  
$query 'select * from '.$db_table.' where 1 ORDER BY 'date' DESC  LIMIT 0, '.$max_mess
  
$result mysql_query($query);
  if (!
$result)
  {
    echo 
"Error! mysql_query".mysql_error();
    exit;
  }

  echo 
"Всего сообшений: ".$count;
  if (
$count >0# Если нет сообшений выключаем
  
{
    echo 
'Нет сообщений!';
    include 
'footer.php';
    exit;
  }
  
// Преобразуем в цикле каждую запись таблицы в
  // в ассоциативный массив $messages, ключи которого
  // будут названы по именам столбцов в таблице
  
while ($messages mysql_fetch_array($result)) # Цикл проверки кол-ва строк для вывода их
  
{
    
$row_date htmlspecialchars($messages["date"]);
    
$row_name htmlspecialchars($messages["name"]);
    
$row_message htmlspecialchars($messages["message"]);
    echo 
"<br/>###<br/>";
    echo 
"Время: ".$row_date;
    echo 
"<br/>";
    echo 
"Имя: ".$row_name;
    echo 
"<br/>";
    echo 
"Сообщение: ".$row_message;
  }
  include 
'footer.php';
?>


PS Т.е. поменял бы местами функции mysql_result() и mysql_fetch_array(), так как первую функцию лучше использовать для извлечения одиночных результатов, а вторую для многострочных - получается быстрее.

   
 
 автор: Akira   (22.10.2004 в 23:33)   письмо автору
 
   для: cheops   (22.10.2004 в 21:15)
 

Интересно, надо попробывать...

   
 
 автор: Akira   (23.10.2004 в 14:49)   письмо автору
 
   для: cheops   (22.10.2004 в 21:15)
 

Имено это и не работает =) Я вроде бы пытался так делать .
 while ($messages = mysql_fetch_array($result)) # Цикл проверки кол-ва строк для вывода их 
  { 
    $row_date = htmlspecialchars($messages["date"]); 
    $row_name = htmlspecialchars($messages["name"]); 
    $row_message = htmlspecialchars($messages["message"]); 
    echo "<br/>###<br/>"; 
    echo "Время: ".$row_date; 
    echo "<br/>"; 
    echo "Имя: ".$row_name; 
    echo "<br/>"; 
    echo "Сообщение: ".$row_message; 
  }

Может есть у кого еще предложения?

   
 
 автор: cheops   (23.10.2004 в 14:52)   письмо автору
 
   для: Akira   (23.10.2004 в 14:49)
 

А что не работает? Лучше ставить вопрос так: должно быть то-то, а получается то-то.

   
 
 автор: Akira   (23.10.2004 в 18:11)   письмо автору
 
   для: cheops   (23.10.2004 в 14:52)
 

Как я понял проблема вот в этом:
while ($messages = mysql_fetch_array($result))

Ну это не главное...
Я тут обновил ...
Вообшем интересно получаеться...
<?php
include $DOCUMENT_ROOT.'/wap/inc/header.php';
include 
$DOCUMENT_ROOT.'/wap/inc/db/config.php';
#########################################################
if (empty($page)) $page 0;
if (
$page 0$page 0;
#########################################################
#########################################################
$count_query 'select count(*) from guestbook where 1 ;';
$total_mess mysql_query ($count_query);
$total_count mysql_fetch_array ($total_mess);
$count $total_count ['count(*)'];
##########################################################
$query 'select * from guestbook where 1 ORDER BY 'date' DESC  LIMIT '.$page.', '.$max_mess.';'
$result mysql_query($query);
if (!
$result)
{
echo 
"Error! mysql_query".mysql_error();
exit;
}

echo 
"Всего сообшений: ".$count;
if (
$count 0# Если нет сообшений выключаем
{
echo 
'Нет сообщений!';
include 
$DOCUMENT_ROOT.'/wap/inc/footer.php';
exit;
}

while (
$i $max_mess# Цикл проверки кол-ва строк для вывода их
{
$row_date htmlspecialchars(mysql_result($result$i"date"));
$row_name htmlspecialchars(mysql_result($result$i"name"));
$row_message htmlspecialchars(mysql_result($result$i"message"));
echo 
"<br/>###<br/>";
echo 
"Время: ".$row_date;
echo 
"<br/>";
echo 
"Имя: ".$row_name;
echo 
"<br/>";
echo 
"Сообщение: ".$row_message;
echo 
"<br/>";
$i++; # Добавление к $i  единицу
}
##########################################################
if ($page 0)  echo '<a href="read_mess.php?page='.($page $max_mess).'">Предыдущие</a> ';
  if (
$count $page $max_mess)  echo ' <a href="read_mess.php?page='.($page $max_mess).'">Следующие</a>';
#######################################################
include $DOCUMENT_ROOT.'/wap/inc/footer.php';
?>]

Кто сможет сказать мне как сделать так что бы пустые сообшения не показывались?

   
 
 автор: cheops   (23.10.2004 в 18:22)   письмо автору
 
   для: Akira   (23.10.2004 в 18:11)
 

Ну можно проверить сообщение и если оно пустое, то пропустить текущий цикл и перейти к следующему при помощи инструкции continue;
<?
while ($i $max_mess# Цикл проверки кол-ва строк для вывода их 

$row_date htmlspecialchars(mysql_result($result$i"date")); 
$row_name htmlspecialchars(mysql_result($result$i"name")); 
$row_message htmlspecialchars(mysql_result($result$i"message")); 
$row_message trim($row_message); // Убираем начальные и конечные пробелы
// Если сообщение пустое - переходим к следующему циклу
if(empty($row_message)) continue;
echo 
"<br/>###<br/>"
echo 
"Время: ".$row_date
echo 
"<br/>"
echo 
"Имя: ".$row_name
echo 
"<br/>"
echo 
"Сообщение: ".$row_message
echo 
"<br/>"
$i++; # Добавление к $i  единицу 

?>

   
 
 автор: Akira   (23.10.2004 в 19:46)   письмо автору
 
   для: cheops   (23.10.2004 в 18:22)
 

<?php
include $DOCUMENT_ROOT.'/wap/inc/header.php';
include 
$DOCUMENT_ROOT.'/wap/inc/db/config.php';
#########################################################
if (empty($page)) $page 0;
if (
$page 0$page 0;
#########################################################
#########################################################
$count_query 'select count(*) from guestbook where 1 ;';
$total_mess mysql_query ($count_query);
$total_count mysql_fetch_array ($total_mess);
$count $total_count ['count(*)'];
##########################################################
$query 'select * from guestbook where 1 ORDER BY 'date' DESC  LIMIT '.$page.', '.$max_mess.';'
$result mysql_query($query);
if (!
$result)
{
echo 
"Error! mysql_query".mysql_error();
exit;
}

echo 
"&#x0412;&#x0441;&#x0435;&#x0433;&#x043E; &#x0441;&#x043E;&#x043E;&#x0431;&#x0448;&#x0435;&#x043D;&#x0438;&#x0439;: ".$count;
if (
$count 0# Если нет сообшений выключаем
{
echo 
'&#x041D;&#x0435;&#x0442; &#x0441;&#x043E;&#x043E;&#x0431;&#x0449;&#x0435;&#x043D;&#x0438;&#x0439;!';
include 
$DOCUMENT_ROOT.'/wap/inc/footer.php';
exit;
}

while (
$i $max_mess# Цикл проверки кол-ва строк для вывода их
{
$row_date htmlspecialchars(mysql_result($result$i"date"));
$row_name htmlspecialchars(mysql_result($result$i"name"));
$row_message htmlspecialchars(mysql_result($result$i"message"));
$row_message trim($row_message);
if (empty(
$row_message)) break;
echo 
"<br/>###<br/>";
echo 
"&#x0412;&#x0440;&#x0435;&#x043C;&#x044F;:&nbsp;".$row_date;
echo 
"<br/>";
echo 
"&#x0418;&#x043C;&#x044F;:&nbsp;".$row_name;
echo 
"<br/>";
echo 
"&#x0421;&#x043E;&#x043E;&#x0431;&#x0449;&#x0435;&#x043D;&#x0438;&#x0435;:&nbsp;".$row_message;
echo 
"<br/>";
$i++; # Добавление к $i  единицу
}
##########################################################
if ($page 0)  echo '<a href="read_mess.php?page='.($page $max_mess).'">&#x041F;&#x0440;&#x0435;&#x0434;&#x044B;&#x0434;&#x0443;&#x0449;&#x0438;&#x0435;</a> ';
  if (
$count $page $max_mess)  echo ' <a href="read_mess.php?page='.($page $max_mess).'">&#x0421;&#x043B;&#x0435;&#x0434;&#x0443;&#x044E;&#x0449;&#x0438;&#x0435;</a>';
#######################################################
include $DOCUMENT_ROOT.'/wap/inc/footer.php';
?>

Вообщем-то идея хорошая =) Но я вместо continue использовал break т.к. 1) с continue не работает 2)Все поля проверяються на заполнение => Если поле сообшения пустое то цикл можно завершить =)
и теперь все работает =)

   
 
 автор: Akira   (24.10.2004 в 19:49)   письмо автору
 
   для: Akira   (23.10.2004 в 19:46)
 

Угрохал кучу времени... Сделал новости, статистику (хосты, хиты, браузеры), чат.
Теперь доделываю Админку...
Не как не могу справиться с session(); =(
Кто покажет простой способ?

   
 
 автор: cheops   (24.10.2004 в 20:06)   письмо автору
 
   для: Akira   (24.10.2004 в 19:49)
 

Давайте другую тему заведём для обсуждения, а то эта уже длинная. Не очень понятно в чём проблема с сессиями - может вы скажете что вы хотите с ними сделать и чего не получается?

   
 
 автор: Akira   (26.10.2004 в 00:29)   письмо автору
 
   для: cheops   (24.10.2004 в 20:06)
 

Вообще-то все =) Но я использовал передачу переменных по ссылке, правда приходиться проверять в бд но это не важно...
И еще я ЗАФИНАЛИЛ Wap Portal =) Новостная Линия, Чат, Гостевая, Автом. Генерация линков на файлы, Админка. Кому интересно могут взять на http://mobileman.ru/files/wp(1).zip

   
Rambler's Top100
вверх

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