|
|
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
Помогите разобраться. Я в sql еще на уровне валенка и что то не допетрю. Есть запись в БД в которой есть поле и этому полю по умолчанию присваивается значение 0(нуль). Мне необходимо в разовом порядке при старте всего проекта проверить это значение и изменить его на новое выбранное случайно в определенных рамках(именно в этой записи). Делаю запрос на проверку, но он независимо от того что в поле уже прошло изменение всегда возвращает значение удовлетворяющее условию. Вот мой код: $row = mysql_query("SELECT winpole FROM tb_finder WHERE 1"); if ($row == 0) { $winpole = rand(1,100); mysql_query("UPDATE td_finder SET winpole = '$winpole' WHERE 1"); } else {...} ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2014, 18:18:38 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
FogretПомогите разобраться. Я в sql еще на уровне валенка и что то не допетрю. Есть запись в БД в которой есть поле и этому полю по умолчанию присваивается значение 0(нуль). Мне необходимо в разовом порядке при старте всего проекта проверить это значение и изменить его на новое выбранное случайно в определенных рамках(именно в этой записи). Делаю запрос на проверку, но он независимо от того что в поле уже прошло изменение всегда возвращает значение удовлетворяющее условию. Вот мой код: $row = mysql_query("SELECT winpole FROM tb_finder WHERE 1"); if ($row == 0) { $winpole = rand(1,100); mysql_query("UPDATE td_finder SET winpole = '$winpole' WHERE 1"); } else {...} язык SQL ты знаешь достаточно хорошо для данной задачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2014, 18:41:54 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
мои знания поверхностные. синтаксис понимаю исключительно на примере исходного кода всего проекта. Решить сам задачу не могу уже 2 дня =( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2014, 18:44:15 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
изменил начальный запрос к БД и проверку условия на $winpole = mysql_fetch_array(mysql_query("SELECT * FROM tb_finder WHERE 1")); if ($winpole[winpole] == 0) и никакого результата, все без изменения =(( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2014, 21:56:22 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
Fogretименно в этой записиа меняете всю таблицу да и выбираете из всей таблицы, причём без упорядочивания - просто выбираете случайную запись и смотрите, ноль там или нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2014, 08:03:24 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
tanglirFogretименно в этой записиа меняете всю таблицу да и выбираете из всей таблицы, причём без упорядочивания - просто выбираете случайную запись и смотрите, ноль там или нет Подправил запрос "SELECT winpole FROM tb_finder WHERE id = '1'" но все равно у меня этот запрос всегда возвращает значение 0, хотя в таблице нет таких значений. У меня уже башка кипит, а понять нифига не могу где я ошибся? Если не сложно покажите правильный код запроса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2014, 11:04:56 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
Fogretхотя в таблице нет таких значенийчем проверяете? в пхп соединяетесь точно с нужной базой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2014, 13:01:13 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
Fogret, можно сделать только одним updateс нужным условием в where. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2014, 13:07:58 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
Fogrettanglirпропущено... а меняете всю таблицу да и выбираете из всей таблицы, причём без упорядочивания - просто выбираете случайную запись и смотрите, ноль там или нет Подправил запрос "SELECT winpole FROM tb_finder WHERE id = '1'" но все равно у меня этот запрос всегда возвращает значение 0, хотя в таблице нет таких значений. У меня уже башка кипит, а понять нифига не могу где я ошибся? Если не сложно покажите правильный код запроса. говорил же что мускл автор знает достаточно хорошо... :) а где в пхп коде видно, что там возвращаеться ноль ?? в пхп коде видно, что то что возвращаеться, если его преобразовать в число автоприведением типов то получиться ноль ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2014, 15:39:54 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
alex564657498765453Fogretпропущено... Подправил запрос "SELECT winpole FROM tb_finder WHERE id = '1'" но все равно у меня этот запрос всегда возвращает значение 0, хотя в таблице нет таких значений. У меня уже башка кипит, а понять нифига не могу где я ошибся? Если не сложно покажите правильный код запроса. говорил же что мускл автор знает достаточно хорошо... :) а где в пхп коде видно, что там возвращаеться ноль ?? в пхп коде видно, что то что возвращаеться, если его преобразовать в число автоприведением типов то получиться ноль Автор знает sql ровно столько сколько изучил его за последнюю неделю. Знаю что в таблице нет нулевых значений потому что вижу ее в mysql. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2014, 18:19:05 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
tanglirFogretхотя в таблице нет таких значенийчем проверяете? в пхп соединяетесь точно с нужной базой? Соединение происходит с нужной базой, так как значение нужной мне ячейки в таблице меняется каждый раз при прогоне кода, то есть условие проверки всегда соответствует истине несмотря на то что значение в ячейке стоит например 46. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2014, 18:31:47 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
Fogretусловие проверки всегда соответствует истине несмотря на то что значение в ячейке стоит например 46ну тогда alex564657498765453а где в пхп коде видно, что там возвращаеться ноль ?? в пхп коде видно, что то что возвращаеться, если его преобразовать в число автоприведением типов то получиться нольи вообще, сделайте var_dump этого массива (или как там массивы в пхп выводятся) и посмотрите, что вам реально возвращается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2014, 05:27:00 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
ЛАДНО ГОВОРЮ ПРЯМЫМ ТЕКСТОМ АВТОР НЕ ЗНАЕТ ПХП 0 == 0 'vasya' == 0 'v2' == 0 null == 0 у тебя не строгое сравнение, то что условие срабатывает, не означает что в базе число ноль записано ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2014, 13:47:52 |
|
||
|
Новичек в ступоре
|
|||
|---|---|---|---|
|
#18+
Всем спасибо за подсказки, заработал код как надо $win = mysql_query("SELECT id, winpole FROM td_finder WHERE id = '1'"); $row = mysql_fetch_array($win); if ($row[winpole] == 0) { $winpole = rand(1,100); mysql_query("UPDATE td_finder SET winpole='$winpole' WHERE id = '1'"); } else {...} ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2014, 20:40:32 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38656264&tid=1834742]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
64ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 329ms |

| 0 / 0 |
