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

Форум PHP

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

 

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

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

тема: Совпадение текста
 
 автор: SunEagle   (09.09.2013 в 04:16)   письмо автору
 
 

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


<?php

    $link 
mysql_connect('localhost''root''***');
    if (!
$link)
    die(
'Could not connect: ' mysql_error());
    
mysql_query('SET names "utf8"');
    
mysql_select_db('testovaya'$link) or die('Could not select database.');

    
$sql "SELECT * FROM slova order by rand()"

    
$query mysql_query ($sql);

    
$res mysql_fetch_assoc($query);

    
$enname $res['enname'];


    
$str1 trim($_POST['form1']); 
    
$str2 $enname;
    if(
$_POST['button']=="Сравнить")
        {
            if(
strcmp($str1$str2)) 
                { 
                    echo 
"<font color='#FF0000'>Текст не идентичен.</font>"
                } 
                else 
                { 
                    echo 
"<font color='#00FF00'>Текст идентичен.</font>"
                } 

        } 

    echo 
"<form name='form1' method='post' action=''>
    Форма1 
    <br> 
    <input type='text' name='form1' size='20' value='
$str1'>
    <input type='submit' name='button' id='button' value='Сравнить'> 
    </form>"


?>

  Ответить  
 
 автор: moonfox   (09.09.2013 в 04:49)   письмо автору
 
   для: SunEagle   (09.09.2013 в 04:16)
 

помести значения в сессию и сравнивай

  Ответить  
 
 автор: confirm   (09.09.2013 в 07:43)   письмо автору
 
   для: SunEagle   (09.09.2013 в 04:16)
 

Получаете N записей, а сравнение только из одного ряда. Зачем тогда получать несколько?
Зачем - $enname = $res['enname']; $str2 = $enname;?
Зачем проверять значение кнопки отправки формы?
Данные полученные от пользователя нужно выводить на страницу обработанными htmlspecialchars().

  Ответить  
 
 автор: moonfox   (09.09.2013 в 16:06)   письмо автору
 
   для: confirm   (09.09.2013 в 07:43)
 

Зачем проверять значение кнопки отправки формы?

видимо когда он заходит на страницу первый раз, соответственно до отправки формы, он сразу увидит сообщение что его значение не совпало.

  Ответить  
 
 автор: confirm   (09.09.2013 в 16:11)   письмо автору
 
   для: moonfox   (09.09.2013 в 16:06)
 

Когда заходят на страницу первый раз, то проверяют то, что и надо проверить (это означает отправлялась ли форма уже или нет), кнопка в любом случае лишнее.

Сама логика скрипта указывает на то, что это либо запрос не имеющий смысла, либо это запрос со смыслом - "Угадаешь?"

  Ответить  
 
 автор: moonfox   (09.09.2013 в 16:32)   письмо автору
 
   для: confirm   (09.09.2013 в 16:11)
 

ну это он афтор. )

  Ответить  
 
 автор: moonfox   (10.09.2013 в 02:40)   письмо автору
 
   для: SunEagle   (09.09.2013 в 04:16)
 



что-то типа того

<?php
session_start
();

if(isset(
$_POST['pole'])) 
$str1 htmlspecialchars($_POST['pole']); 
else 
$str1 '';

if(empty(
$_SESSION['test']))
cn();

function 
cn()
{
    
$link mysql_connect('localhost''root''1224');
    if (!
$link)
    die(
'Could not connect: ' mysql_error());
    
mysql_query('SET names "utf8"');
    
mysql_select_db('lol'$link) or die('Could not select database.');

    
$query mysql_query('SELECT `slova` FROM `lol` ORDER BY RAND() LIMIT 1');
    
$res mysql_fetch_assoc($query);
    
mysql_close($link);


    return 
$_SESSION['test'] = $res['slova'];
}
    if(!empty(
$str1) && !empty($_SESSION['test']))
    {
        
                    if(
strcmp($str1$_SESSION['test'])) 
                    print 
"Текст не идентичен.";
                    else 
                    {
                      print 
"Текст идентичен."cn();
                    }
    }

    print 
'<form name="form1" method="post" action="">
    Форма1 
    <br> 
    <input type="text" name="pole" size="20" value='
.$str1.'>
    <input type="submit" name="button" value="Сравнить"> 
    </form>'


?> 

  Ответить  
 
 автор: SunEagle   (11.09.2013 в 07:46)   письмо автору
 
   для: moonfox   (10.09.2013 в 02:40)
 

Спасибо!

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

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