powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Запись в БД не производится, "Ошибка в добавлении"
25 сообщений из 39, страница 1 из 2
Запись в БД не производится, "Ошибка в добавлении"
    #38870619
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток, уважаемые люди. Я пытаюсь сделать сервис сокращения ссылок, но при попытки сократить ссылку, получаю ошибку, запись в БД не производится. Подключение к БД есть, если вручную прописать сокращённую ссылку и полную, он её видит, переход по ней работает, но при попытки сократить - "Ошибка в добавлении".

Содержимое исполняемого файла "model.php":
Код: 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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
<?php

    function addUrl($url, $short)
    {
        $t = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y"));
        $resAddUrl = mysql_query("INSERT INTO `urls` (`url`,`short`,`created`,`lastupdated`) VALUES"
            ."                                ('". mysql_real_escape_string($url) ."','". mysql_real_escape_string($short) ."','". mysql_real_escape_string($t) ."','". mysql_real_escape_string(0) ."')") or die("Ошибка в добавлении");
    }
	
	function showUrl($c=1) 
    
    {
        $resViewUrls = mysql_query("SELECT * FROM `urls` ORDER BY `created` DESC,`id` DESC LIMIT ".$c) or die("Ошибка вывода");
        while($rwu = mysql_fetch_assoc($resViewUrls))
        {
            $sn = SITE_URL ."/". $rwu['short'];
            return $sn;
        }
    }
	
    function searchUrl($url)
    {
        $ress = mysql_query("SELECT * FROM `urls` WHERE `url`='". mysql_real_escape_string($url) ."'") or die ("Ошибка базы данных 1<br>".mysql_error());
        
        if(mysql_num_rows($ress) > 0)
        {
            $surl = mysql_fetch_assoc($ress);
            $short = SITE_URL ."/". $surl['short'];
            return $short;
        }
        return false;
    }
	
    function searchShort($short)
    {
        $resss = mysql_query("SELECT * FROM `urls` WHERE `short`='". mysql_real_escape_string($short) ."'") or die ("Ошибка базы данных 2<br>".mysql_error());
        
        if(mysql_num_rows($resss) > 0)
        {
            $ssho = strtolower($short);
            $sshort = strrev($ssho);
            return $sshort;
        }
        return false;
        
    }
	
	    function getNameUrl($len = 4)
    {
        $nUrl = chr(mt_rand(65, 90));
        for($i = 1; $i < $len; $i++)
        {
            
            switch (mt_rand(0, 2))
            {
                
                case  2 : 
                $nUrl .= chr(mt_rand(65, 90));
                break;
                
                case  1 : 
                $nUrl .= chr(mt_rand(97, 122));
                break;
                
                case  0 : 
                $nUrl .= chr(mt_rand(48, 57));
                break;
            }
        }
        return $nUrl;
    }


Быть может где-то в коде допущена ошибка, или что-то не работает, подскажите пожалуйста?
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38870705
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
opiums,

Так вы это того... Вам на ПХП форуме надо задавать этот вопрос.
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38870716
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Axeleron,

да заметил, я случайно, не знаю теперь как перенести туда тему
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38870823
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какой же это кромешный ужас

Модератор: Тема перенесена из форума "ASP.NET".
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871108
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVostt,
1. вот это
Код: php
1.
$t = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y"));


я бы заменил на
Код: php
1.
  $t=time()

;
2. В запросе $resAddUrl попробуй вручную проставить нужные значения
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871159
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mktime вообще выкинуть и вставить "NOW()"

var_dump в помощь. Выводи запрос и смотри что там в итоге мускулу отдается. Попробуй его через phpmyadmin сделать, узнаешь какая ошибка
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871261
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kunaksergey,

вставил time(), вместо mktime(...)
вручную там где именно вводить?

SharuPoNemnogu,

попробовал вывести var_dump ($resAddUrl);
но в ответ увидел лишь NULL
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871304
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
opiums,

Код: php
1.
2.
$resAddUrl = mysql_query("INSERT INTO `urls` (`url`,`short`,`created`,`lastupdated`) VALUES"
            ."                                ('". mysql_real_escape_string($url) ."','". mysql_real_escape_string($short) ."','". mysql_real_escape_string($t) ."','". mysql_real_escape_string(0) ."')") or die("Ошибка в добавлении");



1. посмотрите как формируется запрос. т.е перед $resAddUrl = mysql_query... вставьте:
Код: php
1.
2.
3.
$str="INSERT INTO `urls` (`url`,`short`,`created`,`lastupdated`) VALUES"
            ."                                ('". mysql_real_escape_string($url) ."','". mysql_real_escape_string($short) ."','". mysql_real_escape_string($t) ."','". mysql_real_escape_string(0) ."')";
echo $str;



2. в этот запрос вставьте в Value какие нибудь значения.
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871332
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в $resAddUrl результат выполнения mysql_query? а вардампить надо сам запрос, который внутри mysql_query - var_dump("INSERT INTO `urls`...");
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871349
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kunaksergey,
и так, запрос формируется правильно:
Код: php
1.
INSERT INTO `urls` (`url`,`short`,`created`,`lastupdated`) VALUES ('http://123.ru','BiIB','1423045734','0')
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871353
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторmysql_query — Посылает запрос MySQL
Внимание

Данное расширение устарело, начиная с версии PHP 5.5.0, и будет удалено в будущем. Используйте вместо него MySQLi или PDO_MySQL. Смотрите также инструкцию MySQL: выбор API и соответствующий FAQ для получения более подробной информации. Альтернативы для данной функции:

mysqli_query()
PDO::query()
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871360
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ScareCrow,

у меня PHP 5.3.29
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871361
Фотография -k2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
opiums,

desc `urls` ?
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871374
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-k2-,

с выводом проблем нет, DESC - сортировка же?
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871379
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
opiums,
посмотри структуру таблицы urls.

если вручную установить значения в Values-записывает?
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871387
Фотография -k2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
opiums,

нет, не сортировка, структура(desc-ription) таблицы
вводить в phpmyadmin
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871439
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kunaksergey,

Вручную если прописать - выводит, но не записывает в таблицу.

k2-,

phpmyadmin не использую, предпочитаю HeidiSQL.
Структура таблицы такая - id, url, short, created, lastupdated, hits
Если вручную в таблицу прописать значения, и попробовать сократить ссылку по url, то он выведет ответ http://сайт short, всё как и положенно.
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871450
Фотография -k2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
opiums,

это не структура, вы просто перечислили названия полей, хотя проще было результат приложить
обязательные поля есть например? формат столбцов?
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871460
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-k2-,

думаю, так виднее)
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871524
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а коннект к базе вообще есть? )
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871549
Фотография -k2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
opiums,

попробуйте код из справки, замените только на свои значения подключения к базе

Код: 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.
31.
32.
33.
<html>
<head></head>
<body>

<div>Тестовая страница</div>

<?php 
$mysqli = new mysqli("localhost", "user", "pass", "dbname");
if (mysqli_connect_errno()) {
    printf("Не удалось подключиться: %s\n", mysqli_connect_error());
    exit();
}

$query = "INSERT INTO `urls` (`url`, `short`, `created`) VALUES (?,?,now());";
$stmt = $mysqli->prepare($query);
$stmt->bind_param("ss", $url, $short);

$url = 'http://php.net/manual/ru/mysqli.prepare.php';
$short = 'hjh8979';
$stmt->execute();
printf("%d строк вставлено.\n", $stmt->affected_rows);

$url = 'http://php.net/manual/ru/mysqli-stmt.bind-param.php';
$short = 'k786sdf';
$stmt->execute();
printf("%d строк вставлено.\n", $stmt->affected_rows);

$stmt->close();
$mysqli->close();
?>

</body>
</html>
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871649
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SharuPoNemnogu,

конечно есть, я в базу сделал 2 записи, переход по сокращённым ссылкам работает, запрос на сокращение выводит сокращённую ссылку, типа "была такая - стала такая"
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871660
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-k2-,

я попробовал запустить у себя эту тестовую страничку, изменив только данные для подключения на свои, и ту же БД
результат:
Код: php
1.
2.
Тестовая страница
prepare($query); $stmt->bind_param("ss", $url, $short); $url = 'http://php.net/manual/ru/mysqli.prepare.php'; $short = 'hjh8979'; $stmt->execute(); printf("%d строк вставлено.\n", $stmt->affected_rows); $url = 'http://php.net/manual/ru/mysqli-stmt.bind-param.php'; $short = 'k786sdf'; $stmt->execute(); printf("%d строк вставлено.\n", $stmt->affected_rows); $stmt->close(); $mysqli->close(); ?>
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871665
Фотография -k2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
opiums,

я не знаю как вам удалось получить такой результат с этого кода :)
проверьте кавычки. возможно при вставке поторопились
...
Рейтинг: 0 / 0
Запись в БД не производится, "Ошибка в добавлении"
    #38871668
opiums
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-k2-,

Лишь надпись:
Тестовая страница
-1 строк вставлено. -1 строк вставлено.
...
Рейтинг: 0 / 0
25 сообщений из 39, страница 1 из 2
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Запись в БД не производится, "Ошибка в добавлении"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]