Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » gbook на php

Ответить
Настройки темы
gbook на php

Аватара для slaine

Ветеран


Сообщения: 675
Благодарности: 8


Конфигурация

Профиль | Отправить PM | Цитировать


Скажите как мне в гостевой книге сделать так, чтобы
каждое новое сообщение появлялось вверху, а старые ползли бы вниз?

-------
живодёр - практик


Отправлено: 19:03, 31-03-2005

 

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Если предоставишь код гостевой, можно будет говорить о помощи. Просто искать времени нет, да и то ли еще найдешь, вопрос.

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 20:44, 31-03-2005 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для slaine

Ветеран


Сообщения: 675
Благодарности: 8

Профиль | Отправить PM | Цитировать


Вот:

[MySQL]
create database test;
create table test(name text, pass text);


index.php
=======
<html>
<title></title>
<head>
<META http-equiv=Content-type content="text/html; charset=windows-1251">

<style>
A:link {color: #0099ff; text-decoration: none; font-family: verdana; font-size: 10px; font-weight: bold};
A:visited {color: #0099ff; text-decoration: none; font-family: verdana; font-size: 10px; font-weight: bold};
A:hover {color: #0099ff; text-decoration: underline; font-family: verdana; font-size: 10px; font-weight: bold};
.text {font-family: verdana; font-size: 11px};
</style>
</head>

<body>
<?
$dblocation = "127.0.0.1";
$dbname = "test";
$dbuser = "root";
$dbpassword = "";

if (isset($_GET['user']) && isset($_GET['pass'])){


$a = $_GET['user'];
$s = $_GET['pass'];

$guest = "Гость";
$dbcn = mysql_connect($dblocation, $dbuser, $dbpassword);
$dbsl = mysql_select_db($dbname, $dbcn);


if ($a == "" || $a == " "){
$nik = "Гость";
}else{
$nik = $a;
}

$b = strtolower($s);
$b = str_replace("бля", "fuck", $b);
$b = str_replace("пид", "fuck", $b);
$b = str_replace("пиз", "fuck", $b);
$b = str_replace("пед", "fuck", $b);
$b = str_replace("еба", "fuck", $b);
$b = str_replace("ёба", "fuck", $b);
$b = str_replace("ебн", "fuck", $b);
$b = str_replace("ёбн", "fuck", $b);
$b = htmlspecialchars($b);

if (mysql_query("insert into test values ('$nik', '$b')")){

echo "<html><head>";
echo "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php'>";
echo "</html></head>";
exit();
}
}


?>

<?


$dbcn = mysql_connect($dblocation, $dbuser, $dbpassword);
$dbsl = mysql_select_db($dbname, $dbcn);
$auth = mysql_query("select * from test;");

while ($prnt = mysql_fetch_array($auth)){

echo "<BR><CENTER><table border=0 cellspacing=1 cellpadding=1 bgColor=#0099ff width=300>";
echo "<tr>";
echo "<td align=left bgColor=#ffffff style='font-family: verdana; font-weight: bold; font-size: 10px; color: red'>";

$name = $prnt['name'];
echo "<font color=gray>Написал: </font>".$name."</td>";

echo "</tr>";
echo "<tr height=30 valign=top>";
echo "<td bgColor=#ffffff style='font-family: verdana; font-weight: bold; font-size: 10px; color: #000000'>";

$text = $prnt['pass'];
echo "<P align=justify>".$text."</P></td>";

echo "</tr>";
echo "</table>";
echo "</CENTER><BR>";
}?>

<table align=center>
<tr>
<form action="index.php" method=get>
<td align=center class=text>Ваш ник:<font color=red>*</font></td>
</tr>
<tr>
<td align=center><input type="text" size=25 name="user"></td>
</tr>
<tr>
<td align=center class=text>Сообщение</td>
</tr>
<tr>
<td><textarea rows=5 cols=30 name="pass"></textarea></td>
</tr>
<td align=center><input type="submit" value="Отправить"
style="font-family: verdana; font-size: 11px"></td>
</tr>
</table>

</body></html>

-------
живодёр - практик


Отправлено: 12:02, 01-04-2005 | #3


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Забавно. в Поле pass, как я понял хранится текст сообщения, так? Тогда неудочно выбранное имя. Ну да ладно. Табличку лучше сделать такой:
Код: Выделить весь код
CREATE TABLE `messages` (
  `m_id` int(5) NOT NULL auto_increment,
  `name` varchar(50) NOT NULL default '',
  `message` text,
  UNIQUE KEY `m_id` (`m_id`),
  UNIQUE KEY `name` (`name`)
) TYPE=MyISAM
Код примет вид:
Код: Выделить весь код
<html>
<title></title>
<head>
<META http-equiv=Content-type content="text/html; charset=windows-1251">

<style>
A:link {color: #0099ff; text-decoration: none; font-family: verdana; font-size: 10px; font-weight: bold};
A:visited {color: #0099ff; text-decoration: none; font-family: verdana; font-size: 10px; font-weight: bold};
A:hover {color: #0099ff; text-decoration: underline; font-family: verdana; font-size: 10px; font-weight: bold};
.text {font-family: verdana; font-size: 11px};
</style>
</head>

<body>
<?
$dblocation = "127.0.0.1";
$dbname = "test";
$dbuser = "root";
$dbpassword = "";

if (isset($_GET['name']) && isset($_GET['mess'])){


$a = $_GET['name'];
$s = $_GET['mess'];

$guest = "Гость";
$dbcn = mysql_connect($dblocation, $dbuser, $dbpassword);
$dbsl = mysql_select_db($dbname, $dbcn);


if ($a == "" || $a == " "){
$nik = "Гость";
}else{
$nik = $a;
}

$b = strtolower($s);
$b = str_replace("бля", "fuck", $b);
$b = str_replace("пид", "fuck", $b);
$b = str_replace("пиз", "fuck", $b);
$b = str_replace("пед", "fuck", $b);
$b = str_replace("еба", "fuck", $b);
$b = str_replace("ёба", "fuck", $b);
$b = str_replace("ебн", "fuck", $b);
$b = str_replace("ёбн", "fuck", $b);
$b = htmlspecialchars($b);

if (mysql_query("insert into test values ('$nik', '$b')")){

echo "<html><head>";
echo "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php'>";
echo "</html></head>";
exit();
}
}


?>

<?


$dbcn = mysql_connect($dblocation, $dbuser, $dbpassword);
$dbsl = mysql_select_db($dbname, $dbcn);
$auth = mysql_query("select name, message from test order by m_id desc");

while ($prnt = mysql_fetch_array($auth)){

echo "<BR><CENTER><table border=0 cellspacing=1 cellpadding=1 bgColor=#0099ff width=300>";
echo "<tr>";
echo "<td align=left bgColor=#ffffff style='font-family: verdana; font-weight: bold; font-size: 10px; color: red'>";

$name = $prnt['name'];
echo "<font color=gray>Написал: </font>".$name."</td>";

echo "</tr>";
echo "<tr height=30 valign=top>";
echo "<td bgColor=#ffffff style='font-family: verdana; font-weight: bold; font-size: 10px; color: #000000'>";

$text = $prnt['message'];
echo "<P align=justify>".$text."</P></td>";

echo "</tr>";
echo "</table>";
echo "</CENTER><BR>";
}?>

<table align=center>
<tr>
<form action="index.php" method=get>
<td align=center class=text>Ваш ник:<font color=red>*</font></td>
</tr>
<tr>
<td align=center><input type="text" size=25 name="user"></td>
</tr>
<tr>
<td align=center class=text>Сообщение</td>
</tr>
<tr>
<td><textarea rows=5 cols=30 name="pass"></textarea></td>
</tr>
<td align=center><input type="submit" value="Отправить"
style="font-family: verdana; font-size: 11px"></td>
</tr>
</table>

</body></html>

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 15:35, 01-04-2005 | #4

mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать



Цитата:
$b = str_replace("бля", "fuck", $b);
углубляясь в ...

Отправлено: 17:51, 01-04-2005 | #5


Аватара для slaine

Ветеран


Сообщения: 675
Благодарности: 8

Профиль | Отправить PM | Цитировать


Есть небольшая прблема.
При добавлении собщения перехожу на страницу с сообщениями,
а когда обновляю страницу, то оно появляется второй раз и т.д.
Скажите , что мне сделать, чтоб этого небыло?

-------
живодёр - практик


Отправлено: 14:17, 18-04-2005 | #6


Аватара для archy

Ветеран


Сообщения: 659
Благодарности: 3

Профиль | Отправить PM | Цитировать


После завершения обработки данных сделать
PHP код: Выделить весь код

header("Location: page.html"); 



Отправлено: 14:38, 18-04-2005 | #7


Аватара для slaine

Ветеран


Сообщения: 675
Благодарности: 8

Профиль | Отправить PM | Цитировать



Спасибо, всё работает.
А как мне сделать разбиение по страницам,
на каждой например по десять сообщений?

-------
живодёр - практик


Отправлено: 17:01, 18-04-2005 | #8


Аватара для archy

Ветеран


Сообщения: 659
Благодарности: 3

Профиль | Отправить PM | Цитировать


slaine
На http://webscript.ru есть очень подробные и хорошие статьи по этому поводу

Отправлено: 18:22, 18-04-2005 | #9



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » gbook на php

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Проблема с PHP(не передаются переменные из формы в PHP- скрипт) Kirander Вебмастеру 21 03-08-2009 01:11
C/C++ - [решено] PHP. Fatal error: Function name must be a string in /var/www/index.php on line 15 Artem-Samsung Программирование и базы данных 6 29-11-2008 18:37
[решено] Apache 2.2.8 + Php 5.2.6 + MySQL 5.0.51b (win) - не работает php v0f41k Вебмастеру 4 11-05-2008 22:08
PHP. Чтобы сделать на PHP? scorpion_2004 Вебмастеру 21 25-12-2006 22:58
PHP CTEPX Программирование и базы данных 5 19-09-2003 10:45




 
Переход