Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 71

Странно работает цикл while

26.04.2014, 18:18. Показов 608. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть цикл для ajax.
раньше он выдавал нормальный результат в зависимости от введенного логина.
может я несу бред, но он резко перестал работать.
И теперь постоянно выдает yesyes, либо все таки срабатывает, но через раза два, не давая зарегистрироваться только по одному логину из трех имеющихся в бд.
уже использовался и цикл foreach, и другие способы, не прибегая к использованию циклов. все одно и то же(

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php 
include("bd.php");
 
if(isset($_GET['login']))  
{   $login = $_GET['login'];} 
 
$login=strip_tags($login);
$login=trim($login);
 
$result2 = mysql_query("SELECT login FROM users",$db);
$myrow2 = mysql_fetch_array($result2);
 
foreach( $myrow2 as $key => $value){
    if($myrow2['login'] == $login)
    {
        echo "no";
    }
    else
    {
        echo "yes";
    }
}
 
?>
где я накосячила?
скажите пожалуйстааа
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.04.2014, 18:18
Ответы с готовыми решениями:

if, else if работает странно.
Написал программу html&gt; &lt;head&gt; &lt;title&gt;Roll Em!&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;div align=&quot;center&quot;&gt; &lt;h1&gt;Roll Em!&lt;/h1&gt; &lt;?php ...

Синтаксис Heredoc странно работает
Почему выводит ошибку Parse error: syntax error, unexpected $end? &lt;?php $x=10; echo &lt;&lt;&lt;МЕТКА $x МЕТКА; ...

Странно работает инкремент переменной
Делаю скрипт-викторину, фронтэнд представляет из себя таблицу в 4 столбца, первый-название, следующие 3 - формы. При нажатии кнопки скрипт...

2
 Аватар для Voka
207 / 199 / 110
Регистрация: 27.12.2010
Сообщений: 819
Записей в блоге: 1
26.04.2014, 20:21
c 11 строки поменяй на:
PHP
1
2
3
4
5
6
7
8
9
10
11
while($myrow2=mysql_fetch_assoc($result2))
{
    if($myrow2['login'] == $login)
    {
        echo "no";
    }
    else
    {
        echo "yes";
    }
}
выводит yesyes если имеются два одинаковых логина в бд

Добавлено через 7 минут
а лучше сделай так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php 
include("bd.php");
 
if(isset($_GET['login']))  
{
    $login = $_GET['login'];
    $login=strip_tags($login);
    $login=trim($login);
    /*
    Сначала попробуй это вставить:
    if($result2=mysql_query("SELECT login FROM users WHERE login='".$login."'",$db))
    
    Еси не сработает то:
    $result2=mysql_query("SELECT login FROM users WHERE login='".$login."'",$db);
    if($myrow2=mysql_fetch_array($result2))
    
    Если не сработает то:
    $result2=mysql_query("SELECT login FROM users WHERE login='".$login."'",$db);
    $myrow2=mysql_fetch_array($result2);
    if(!empty($myrow2[0]))
    */
    {
        echo 'Yes';
    }
    else
    {
        echo 'No';
    }
}
?>
Добавлено через 4 минуты
И вот у тебя еще одна ошибка.
Сначала ты делаешь обычный массив( mysql_fetch_array ) из данных полученных из БД типа $myrow2[0],$myrow2[1]...
Потом пытаешься вытащить результат из ассоциативного массива $myrow2['login'], который у тебя обычный.
В этом случае надо использовать mysql_fetch_assoc
0
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 71
26.04.2014, 21:08  [ТС]
Ваш код увы не работал.
До ошибки в php.ini меняла значение директивы output_buffering на On, т.к. не работали сессии. но я возвращала все на место и увы ничего не получилось.
Я решила переустановить денвер, и всунула старый код:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php 
include("bd.php");
 
 
if(isset($_GET['login']))  
{   $login = $_GET['login'];} 
 
$login=strip_tags($login);
$login=trim($login);
 
$result = mysql_query("SELECT login FROM users",$db);
$myrow = mysql_fetch_array($result);
while($myrow = mysql_fetch_array($result))
   {
    if($myrow['login'] == $login)
    {
        echo "no";
        
    }
    else
    {
        echo "yes";
    }
   } 
?>
У меня два таких файла, один на проверку логина, второй на проверку мыла.
Мыло после переустановки денвера начало работать, правда как то странно, реагируя на одну запись в бд из двух, на второе мыло, которое так же есть в бд, скрипт не реаировал, логин так вообще игнорировал.
Но вот теперь если запускать эти файлы в отдельности они возвращают уже одиночные yes либо no.

Как то все это странно( одно проблема сменилась другой.
Во всяком случае спасибо Вам больше за помощь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.04.2014, 21:08
Помогаю со студенческими работами здесь

$_SERVER['HTTP_REFERER'] странно работает
У меня 2 файла - sender.php и to.php to.php: &lt;? echo $_SERVER; ?&gt; &lt;input type='button' onclick=&quot;location='sender.php'&quot;...

ООП: странно работает автоматическая функция
Работающий код: class Configs { public function __construct() { define('CONFIG_INCLUDE', true); ...

Передача значений радиобаттонов в БД mysql работает странно
Здравствуйте! Мучаюсь с формой уже долго, совершенно нет идей почему всё работает именно так. Вкратце. Есть база данных с...

Странно работает авторизация на PHP
Здравствуйте! У меня есть скрипт авторизации, основанный на COOKIE: &lt;form id=&quot;sign_in&quot; method=&quot;POST&quot;&gt; ...

Странно работает цикл for со списком
Вообщем у меня такая проблема: создал цикл for (int i = 0; i &lt; bricks.size(); i++) { if (b.checkHit((*its)-&gt;x,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru