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

Форум PHP

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

 

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

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

тема: ребят помогите
 
 автор: admin   (29.06.2011 в 22:40)   письмо автору
 
 

проблема в том что после отправки сообщения пользователя выкидывает
страницу можно посматреть и проверить тут
http://www.sokolov-al.ru/test/index.php
логин serdj
пароль 041093

<?php
session_start
();
mysql_connect ("localhost","sbskt","WemKKE2pgq");
mysql_select_db("sbskt");
$ve=$_GET['ve'];
$login=$_POST['login'];
$pass=$_POST['pass'];
$result mysql_query("SELECT * FROM users WHERE login='$login' AND pass='$pass' ") or die(mysql_error());
$userinfo mysql_fetch_array($result)
if((
$login == $userinfo['login']) && ($pass == $userinfo['pass']))
{
$_SESSION['uid']=$userinfo['id'];
$solo $_SESSION['uid'];
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Вопрос/Ответ</title>
        <meta name="generator" content="TYPO3 4.4 CMS">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <link rel="stylesheet" href="../css/od.css" type="text/css" />
        <link rel="stylesheet" href="../css/shop.css" type="text/css" />
</head>
    <body>
<table width="960" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="bodi">
<tr>
    <td>
        <table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr align="right">
                <td id="content">
        <div id="c1" class="csc-default" >
            <table align="center" width="100%">
                <tr>
                    <td align="center">
                        <?php 
                        
if (isset($ve))
                        {
                        echo 
"<form action='index.php' method='post' name='form'>
                            <table>
                            <tr><td>Логин:</td><td><input type='text' name='login'></td></tr>
                            <tr><td>Пароль:</td><td><input type='password' name='pass'></td></tr>
                            <tr><td><input type='submit' value='войти'></td></tr></table></form>"
;
                        } else {
$ult mysql_query("SELECT * FROM sms");
$row mysql_fetch_array($ult);
do
{
echo 
"<table width='600' align='center'><tr><td align=left bgcolor='e9e9e9'> "." " .$row['name']." (".$row['date']." ".$row['time']. ")
    </td><tr><tr><td>"
.$row['text']."</td></tr>
      <tr><td align='right'>"
.$row['id']."</td></tr>
      </table></br></br>"
;
}
while (
$row mysql_fetch_array($ult));      
                        if (
$solo 0)
                        {
$_SESSION['uid']=$userinfo['id'];
$solo $_SESSION['uid'];
                        echo 
"<form action='index.php?qw=9' method='post' name='form1'><table>
                                <tr><td><input type='text' name='username' value="
.$userinfo['login']."></td></tr>
                                <tr><td>Введите ваше сообщение:</td></tr>
                                <tr><td><textarea name='message' rows=`6` cols=`37`></textarea></td></tr>
                                <tr><td><input type='submit' value='Отправить сообщение'></td></tr>
                            </table></form>"
;
                        } else {
                            echo 
"Вы не можете оставлять свои сообщения. <a href='index.php?ve=1'>Войдите</a> или <a href='register.php'>зарегестрируйтесь</a>" ;
                        }
                        }
$qw $_GET['qw'];
if (isset(
$qw))
{
    if (isset(
$_POST['username']) && isset($_POST['message']))
    {
        if (((
strlen($_POST['username'])>0)) &&
            ((
strlen($_POST['message'])>0) ))
            {
$date=date(d.".".m.".".Y);
$time=date(H.":".i);
$name $_POST['username'];
$text $_POST['message'];
$status $userinfo['text'];
$result mysql_query("INSERT INTO sms (name,date,time,text,status) VALUES ('$name','$date','$time','$text','$status')") or die(mysql_error());
            echo 
"<META HTTP-EQUIV=\"Refresh\" CONTENT=\"2; URL=index.php\">";
            }
        }
    }
?>
                    </td>
                </tr>
            </table>
            </div></div><div class="csc-textpic-clear">
</div></div></td></tr></table></td></tr><tr><td>
        <table border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
    <td width="51px"><img src="../img/tel.png" width="51" height="63" /></td><td width="10px">&nbsp;</td>
    <td width="240px"> <br />
        <font color="#4abb20" size="+1" face="Tahoma, Geneva, sans-serif">(383) 210-56-07, 256-04-06</font></td>
    <td width="100px">&nbsp;</td>
    <td width="53px"><img src="../img/mail.png" width="53" height="63" /></td><td width="10px">&nbsp;</td>
    <td width="200px">Получить прайс<br />
<?php
$asd 
$_POST['body'];
$date date('j');//дата
if ($date 2)
$mail="sokolov-al@ngs.ru" ;//не четные
else 
$mail="a_sokolov@mbit.ru" ;//четные
$email "$mail"
$subject "Прайс"
$message "Запрос прайса"
$mailheaders "Content-type:text/plain;charset=windows-1251\n"
$mailheaders .= "From: $asd \r\n"
if(
$asd && mail($email$subject$message$mailheaders))    {
?>
<head>
<script type="text/javascript">
<!--
location.replace("index.php");
//-->
</script>
<noscript>
<meta http-equiv="refresh" content="0; url=mail.php">
</noscript>
</head>
<?php }?>
        <form action="index.php" method="post">
            <input value="Ваш Е-mail" type="text" name="body" >
            <input type="submit" value="Ok">
        </form>
    </td></tr>    </table></td></tr></table></table>
    </body>
</html>

  Ответить  
 
 автор: cheops   (29.06.2011 в 22:52)   письмо автору
 
   для: admin   (29.06.2011 в 22:40)
 

Обработчик добавления нового сообщения переместите вверх, до вывода любого HTML-кода, а первый обработчик (авторизация) запускайте только в том случае, если не пусты $_POST['login'] и $_POST['pass'], иначе пустые $_POST данные у вас будут затирать сессию.

PS Кроме того, все POST-данные, которые вы помещаете в базу данных необходимо экранировать - иначе у вас сейчас очень быстро пароли всех пользователей утащат при помощи SQL-инъекции.

  Ответить  
 
 автор: admin   (29.06.2011 в 23:01)   письмо автору
 
   для: cheops   (29.06.2011 в 22:52)
 

<?php
session_start();
mysql_connect ("localhost","sbskt","WemKKE2pgq") or die("не удалось подключиться к бд");
mysql_select_db("sbskt");
$ve=$_GET['ve'];
if (isset($_POST['login']) && isset($_POST['pass'])){
$login=$_POST['login'];
$pass=$_POST['pass'];
$result = mysql_query("SELECT * FROM users WHERE login='$login' AND pass='$pass' ") or die(mysql_error());
$userinfo = mysql_fetch_array($result);
if(($login == $userinfo['login']) && ($pass == $userinfo['pass']))
{
$_SESSION['uid']=$userinfo['id'];
$solo = $_SESSION['uid'];
}
}
$qw = $_GET['qw'];
if (isset($qw))
{
if (isset($_POST['username']) && isset($_POST['message']))
{
if (((strlen($_POST['username'])>0)) &&
((strlen($_POST['message'])>0) ))
{
$date=date(d.".".m.".".Y);
$time=date(H.":".i);
$name = $_POST['username'];
$text = $_POST['message'];
$status = $userinfo['text'];
$result = mysql_query("INSERT INTO sms (name,date,time,text,status) VALUES ('$name','$date','$time','$text','$status')") or die(mysql_error());
echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"0; URL=index.php\">";
}
}
}
?>

  Ответить  
Rambler's Top100
вверх

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