Marylin Manson Posted July 26, 2007 Report Share Posted July 26, 2007 Добрый день! Принцип работы скрипта: форма, где вводим ник и статус который хотим присвоить данному игроку. Скрипт меняет значение char_status, в колонке с данными игроков id, в базе players. Проблема в том, что статус меняется только если он - число! В чем я ошибся? Как можно сделать чтобы и текст добавлялся? <?php include ("../func/func.dco"); if (isset($c_pass)&&isset($row['pass'])&&$c_pass==$pass&&$row['uin']==1){ include("nav.php"); ?> </td> <td> <form method="post" action="pers_status.php"> Ник:<br> <input type="text" name="nick" value=""><br> Статус:<br> <input type="text" name="status" value=""><br> <input type="submit" name="submit" value="submit"> </form> <?php if (isset($submit)){ mysql_query("UPDATE players.id SET char_status = $status WHERE nick = '$nick'"); if (mysql_affected_rows()==1) echo 'Статус изменен'; else echo 'Ошибка, вероятно такого персонажа несуществует'; } ?> <?php }else { header ("location: /login.php"); exit();} ?> </td> </tr> </table> </body> </html> Link to comment Share on other sites More sharing options...
andrisp Posted July 26, 2007 Report Share Posted July 26, 2007 Pārbaudi kāds datu tips ir char_status. Visticamāk, ka INT vai kas tāds. Nomaini tad uz VARCHAR. Kā arī iekš kverija stringi jāliek pēdiņās. Link to comment Share on other sites More sharing options...
Marylin Manson Posted July 26, 2007 Author Report Share Posted July 26, 2007 Bija TEXT. Nomainiju uz VARCHAR - atkal tas pats. Neko neizmainijas. Ciparus var pielikt, burtus ne.. Link to comment Share on other sites More sharing options...
Marylin Manson Posted July 26, 2007 Author Report Share Posted July 26, 2007 Ja, ar pedinjam viss strada! Paldies! Link to comment Share on other sites More sharing options...
bubu Posted July 26, 2007 Report Share Posted July 26, 2007 Dīvaini, ka vienā vietā lieto pēdiņas '$nick', bet otrā nē - $status. Un vēl pats brīnies ka nestrādā :) Te ir jāatceras, ka echo ir viens no labākajiem debugeriem. Vajadzēja izvadīt kveriju ar echo un paskatīties. Kā arī vajag pārbaudīt mysql kverija kļūdu: mysql_query("UPDATE ... ") or die(mysql_error()); Tur viss būtu pateikts. Link to comment Share on other sites More sharing options...
marcis Posted July 26, 2007 Report Share Posted July 26, 2007 error_reporting(E_ALL); Link to comment Share on other sites More sharing options...
andrisp Posted July 26, 2007 Report Share Posted July 26, 2007 marcis, un tu domā, ka error_reporting(E_ALL) viņam pateiktu, ka kverijā kļūda ? :) Link to comment Share on other sites More sharing options...
marcis Posted July 26, 2007 Report Share Posted July 26, 2007 diezvai Link to comment Share on other sites More sharing options...
Recommended Posts