Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.11.2018, 11:16   #1
proftelecom
Новичок
Джуниор
 
Регистрация: 18.11.2018
Сообщений: 3
По умолчанию помогите плиз код с mysql изменить на mysqli

Перестал у нас работать код mysql, скорее всего это из-за обновления php на сервере. Помогите пожалуйста изменить код на mysqli

вот старый код на mysql
143 это id товара в sql базе, price это числовое значение (цена)


<?php

include('connect_all.php');

$sql = "SELECT price FROM mg_product WHERE id = 143";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$rows[] = array(
"price" => $row['price']);
}

$json = json_encode($rows);

$callback = $_GET['callback'];
echo $callback.'('. $json . ')';

?>

заранее спасибо
proftelecom вне форума Ответить с цитированием
Старый 18.11.2018, 11:49   #2
username2
 
Регистрация: 09.10.2018
Сообщений: 6
По умолчанию

файл db.php
Код:
<?php
// mysql класс для работы с бд
 
define("MHOST", "localhost"); // localhost
define("MUSER", "root"); // имя пользователя базы данных
define("MPASS", "123"); // пароль пользователя базы данных
define("MDBNM", "baz"); // имя базы данных mysql

class DBi {
    public static $conn;
    public static $lastquery;
    public static function get($args) {
        return self::$conn->$args;
    }
    public static function __callStatic($func, $args) {
        if(is_null(self::$conn)){
            self::$conn = new mysqli(MHOST, MUSER, MPASS, MDBNM); // сервер логин пароль база данных
            if (self::$conn->connect_error) {
                die('Connect Error (' . self::$conn->connect_errno . ') '. self::$conn->connect_error);
            }
            DBi::set_charset("utf8");      
        }
        return call_user_func_array(array(self::$conn, $func), $args);
    }
}
// простой запрос в БД
function mq($sql) {
    $res = DBi::query($sql);
    if (!is_bool($res)) $res->free();
}
// вставить ряд в БД
function mi($sql) {
    $res = DBi::query($sql);
    $id = 0;
    if ($res===true) $id = DBi::get("insert_id");
    if (!is_bool($res)) $res->free();
    return $id;
}
// получаем линию в БД
function mr($sql) {
    $res = DBi::query($sql);
    $row = false;
    if (!is_bool($res) AND $res->num_rows>0)
    $row = $res->fetch_assoc();
    if (!is_bool($res)) $res->free();
    return $row;  
}
// получаем поле из БД
function mf($sql,$field) {
    $res = DBi::query($sql);
    $row = false;
    if (!is_bool($res) AND $res->num_rows>0)
    $row = $res->fetch_assoc();
    if (!is_bool($res)) $res->free();
    if (isset($row[$field])) return $row[$field];
    return false;  
}
// получаем массив в БД
function ma($sql) {
    $res = DBi::query($sql);
    $rows = array();
    if (!is_bool($res) AND $res->num_rows>0) {
        while ($row = $res->fetch_assoc()) $rows[] = $row;
    }
    if (!is_bool($res)) $res->free();
    return $rows;  
}
// простое экранирование строки
function sqle($v) {
	return "".DBi::real_escape_string($v)."";
}
// сложное экранирование
function sqlse($v) {
        if (is_array($v)) {
			$b = "".sqle($v[1])."";
			switch ($v[0]) {
				case 'l': $b = "'%".$b."%'"; break; // like
				case 'll': $b = "'".$b."%'"; break; // likeleft
				case 'lr': $b = "'%".$b."'"; break; // likeright
			}
			$b = ' LIKE '.$b;
		} else {
			if (is_null($v)) $b = 'NULL';
			elseif ($v === "NOW()") $b = 'NOW()';
			else $b = "'".sqle($v)."'";
			$b = ' = '.$b;
		}
		return $b;
}
// склеивание аргументов в SET SQL
function sqlset($arr) {
    $out = array();
    foreach ($arr as $k=>$v) {
        $b = sqlse($v);
        $k2 = explode('.',$k); $k1 = array_pop($k2); $k2[] = '`'.$k1.'`';
        $out[] = implode('.',$k2).''.$b;
    }
    $out = implode(', ',$out);
    if ($out=='') return '';
    return ' SET '.$out;
}
// склеивание аргументов в WHERE SQL
function sqlwhere($arr) {
    $out = array();
    foreach ($arr as $k=>$v) {
        $b = sqlse($v);
        $k2 = explode('.',$k); $k1 = array_pop($k2); $k2[] = '`'.$k1.'`';
        $out[] = implode('.',$k2).''.$b;
    }
    $out = implode(' AND ',$out);
    if ($out=='') return '';
    return ' WHERE '.$out;
}
ваш скрипт
Код:
<?php

include('connect_all.php');

$rows = ma("SELECT price FROM mg_product WHERE id = 143");

$json = json_encode($rows);

$callback = $_GET['callback'];
echo $callback.'('. $json . ')';

?>
username2 вне форума Ответить с цитированием
Старый 18.11.2018, 12:57   #3
proftelecom
Новичок
Джуниор
 
Регистрация: 18.11.2018
Сообщений: 3
По умолчанию

При выводе в html у меня прописано так:

Код:
<script type="text/javascript">
$("document").ready(function () {

   $.getJSON('http://proftelecom.by/price_cena/json_410.php?callback=?', function (data) {

        $("#content_KX-HDV100").html('');
        $.each(data, function (i, item) {

            $("#content_KX-HDV100").append(item.price);

        });
    });
    $("#content_KX-HDV100").fadeIn(2000);

});
</script>
Код:
Цена:<span id="content_KX-HDV100"></span>

но почему-то не выводится. причем это пропало пару дней назад само собой, никто ничего не трогал, просто исчезли все данные с sql

http://www.proftelecom.by/SIP-telefo..._KX-HDV100.htm


_____
Код программы нужно выделять (форматировать) тегами [CODE] [/CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 18.11.2018 в 16:04.
proftelecom вне форума Ответить с цитированием
Старый 18.11.2018, 19:39   #4
proftelecom
Новичок
Джуниор
 
Регистрация: 18.11.2018
Сообщений: 3
По умолчанию

поменял ссылку на www.... и все заработало. спасибо. хотя раньше и без www ссылка работала
proftelecom вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите изменить код(он работает, но нужно изменить) Programmer_1 Помощь студентам 4 17.09.2018 20:05
Надо изменить код связанное с MySQL Риназ SQL, базы данных 3 01.10.2017 11:59
MYSQL и MYSQLI непонятка или глаз замылился? Kotaries PHP 1 27.08.2011 13:34
помогите плиз написать код на следующие вопросы delf7 Фриланс 1 03.01.2008 10:53