помощь в работе скрипта

Тема в разделе "Игровые движки", создана пользователем linpc, 12 фев 2013.

  1. linpc

    linpc

    Регистр.:
    6 апр 2012
    Сообщения:
    178
    Симпатии:
    52
    Имеется код добавления вещи в БД, но почему то он не добавляет его. Вот код:
    PHP:
    mysql_query("INSERT INTO `items` (`gif`, `name`, `price`, `dprice`, `block`, `2w`, `type`, `param`, `need`, `acte`, `num_a`, `effect`, `level,` `massa`, `slot`) VALUES ('".htmlspecialchars($_POST['gif'])."','".htmlspecialchars($_POST['name'])."','".htmlspecialchars($_POST['price'])."','".htmlspecialchars($_POST['dprice'])."','".htmlspecialchars($_POST['block'])."','".htmlspecialchars($_POST['wtor'])."','".htmlspecialchars($_POST['type'])."','".htmlspecialchars($_POST['par'])."','".htmlspecialchars($_POST['need'])."','".htmlspecialchars($_POST['acte'])."','".htmlspecialchars($_POST['num_a'])."','".htmlspecialchars($_POST['effect'])."','".htmlspecialchars($_POST['level'])."','".htmlspecialchars($_POST['massa'])."','".htmlspecialchars($_POST['slot'])."');");
     
  2. Solven

    Solven Постоялец

    Регистр.:
    14 окт 2006
    Сообщения:
    125
    Симпатии:
    13
    Хоть ошибку написал бы, которую выдает и откуда добавляешь (скрипт, пхпмайадмин...)
     
  3. Шумадан

    Шумадан Хабарра!!11

    Регистр.:
    6 фев 2008
    Сообщения:
    1.728
    Симпатии:
    2.105
    это пхп

    нужно проверить вот что:
    1. соединение с базой рабоченее, юзе-пароль, и т.д.
    2. значения из поста существуют
    3. строка которая "INSERT ..." корректная, её можно выполнить в phpmyadmin. Тут вариантов с ошибкой может быть предостаточно, уникальность ключа (хотя, где он тут?), значения (скажем пытается вставить строку в битовое поле) и т.д.
    сделать
    скопировать в phpmyadmin и посмотреть какая ошибка будет
    4. посмотреть логи вэб сервера на предмет ошибки
     
    linpc нравится это.
  4. Doctor_Chaos

    Doctor_Chaos Проктолог-гинеколог

    Moderator
    • Супермодератор
    Регистр.:
    7 сен 2013
    Сообщения:
    952
    Симпатии:
    654
    Убери из запроса все `, именно косые
     
  5. Spays

    Spays Писатель

    Регистр.:
    28 окт 2012
    Сообщения:
    2
    Симпатии:
    0
    PHP:
    case"prov":
    if(isset(
    $_POST['nick']) && $_POST['nick']!="" && isset($_POST['pass']) && $_POST['pass']!=""){
    $nick=htmlspecialchars(stripslashes($_POST['nick']));
    $pass=htmlspecialchars(stripslashes($_POST['pass']));

    //

    $x=0; while($x<1)
    {
    $ses=mt_rand(10000000,99999999);
    $col=mysql_query("SELECT * FROM users WHERE ses=\"$ses\"") or die('error');
    $row=mysql_fetch_array($col);
    if(!isset(
    $row['nick']))
    $x=1;
    }
    //
    $brauz=getenv('HTTP_USER_AGENT');
    if (
    getenv("HTTP_X_FORWARDED_FOR"))
    {
    $ip=getenv("HTTP_X_FORWARDED_FOR");
    }
    else
    {
    $ip=getenv("REMOTE_ADDR");
    }
    $onli=date("U")-600;
    $col=mysql_query("SELECT * FROM users WHERE online>\"$onli\" && ipsoft=\"$brauz\" && nick!=\"$nick\" && ip=\"$ip\"") or die('error');
    $row=mysql_fetch_array($col);
    if(isset(
    $row['nick']) && $nick!='DemidRoLL' && $nick!='skafandr' && $nick!='Cheh' && $nick!='¤Лапуля¤' && $nick!='Dimka')
    {
    echo
    "В доступе отказано!!<br>* * * * *<br><div class=kto><a href=\"log.php\">назад</a></div>";
    exit;
    }
    session_start();
    if(isset(
    $_SESSION['ses'])) unset($_SESSION['ses']);
    if(isset(
    $_SESSION['ses8'])) unset($_SESSION['ses8']);
    $col=mysql_query("SELECT * FROM users WHERE nick=\"$nick\" && pass=\"$pass\"") or die('error');
    $online=date("U");
    $row=mysql_fetch_array($col);
    if(isset(
    $row['nick']))
    {
    $nnj=mysql_query("SELECT * FROM dop WHERE nick=\"$nick\"");
    $rowk=mysql_fetch_array($nnj);
    if(!isset(
    $rowk['nick']))
    $qls=mysql_query("INSERT INTO dop VALUES ('',\"$nick\",\"\",\"\",\"\",\"\")") or die('insert error');
    $nnj=mysql_query("SELECT * FROM skills WHERE nick=\"$nick\"");
    $rowk=mysql_fetch_array($nnj);
    if(!isset(
    $rowk['nick']))
    $qls=mysql_query("INSERT INTO skills VALUES ('',\"$nick\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\")") or die('insert error');
    $sq=mysql_query("SELECT * FROM komponents WHERE nick=\"$nick\"")or die('error');
    $ro=mysql_fetch_array($sq);
    if(!isset(
    $ro['nick'])) mysql_query("INSERT INTO komponents VALUES ('',\"$nick\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\")") or die('insert error');
    $nnj=mysql_query("SELECT * FROM equip WHERE nick=\"$nick\"");
    $rowk=mysql_fetch_array($nnj);
    if(!isset(
    $rowk['eq1']))
    $qls=mysql_query("INSERT INTO equip VALUES ('',\"$nick\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\")") or die('insert error');
    $sql=mysql_query("UPDATE users SET ses=\"$ses\", online=\"$online\" WHERE nick=\"$nick\" && pass=\"$pass\"") or die ('set error');
    $_SESSION['super']=0;
    if(
    $nick=="DemidRoLL")
    $_SESSION['super']=1;
    if(
    $nick=="¤Лапуля¤")
    $_SESSION['super']=2;
    header("Location:index.php?ses=$ses");
    exit;
    Это грубо говоря регистрация персонажа, после ввода данных через форму постоянно выдает "insert error". Понятно что с базой данных проблема, но блин понять не могу где и в чем причина.
     
    Последнее редактирование: 7 фев 2014