2013-12-24 4 views
0

У меня есть пользовательская функция, которую я использую, чтобы облегчить мне работу над проектом, с которым я работаю. Но теперь это не сработает должным образом, поэтому я надеюсь, что кто-то здесь может мне помочь.
код выглядит следующим образом:Пользовательская функция Mysqli

function custom_new_offer($conns,$adminOfferName,$adminOfferNeed,$adminOfferAmount) { 
$sql = "INSERT INTO items_offer (offer_name, offer_need, offer_amount) VALUES ('$adminOfferName', '$adminOfferNeed','$adminOfferAmount')"; 
mysqli_query($sql) or die ("Failed query".mysqli_error($conns)); 
} 

и запрос выглядит следующим образом:

$sql = custom_new_offer($conn,"plank","plank","2"); 

Но он просто возвращает «Сбой запроса» сообщение об ошибке и не mysqli_error, что я хотел.

+0

Что-нибудь изменилось в последнее время с сервером. Т.е. обновлена ​​версия php, изменены пользователи mysql и т. Д.? –

+0

Привет! Нет, я планирую обновить версию php, но еще не сделал этого. Все по-прежнему одинаково :) – eklundkristoffer

+0

Маленькая вещь. У вас '$ conns' в функции' $ conn' для '$ sql', уверен, что это не так, просто подумал, что я укажу это. Обеспечили ли вы, что соединение mysql работает, как было предложено ответом Джелле (поскольку он был удален), возможно, создать быструю функцию для тестирования и сделать выбор или что-то еще. –

ответ

0

Mysqli-соединение не используется в вашем запросе. Добавьте $ Conns к команде mysqli_query()

mysqli_query($conns, $sql) 
+3

Это ответ? – Rikesh

+0

Ofcourse У меня есть соединение с базой данных, $ conns - это переменная mysqli_connect. Спасибо :) – eklundkristoffer

+0

Учитывая, что он не получает выход для mysqli_error(), я считаю, что это вполне может быть ответом. $ conn не является активным соединением БД. –

0

Я считаю, что следующие могут работать лучше вместо функции, которую в настоящее время используется как было бы проверить, что соединение было создано первое перед использованием mysqli_query. Тем не менее, вам следует рассмотреть возможность использования подготовленных операторов вместо построения запроса в строке.

function custom_new_offer($conns, $adminOfferName, $adminOfferNeed, $adminOfferAmount) { 
    if (!$conns) { 
     die("Connect Error (" . mysqli_connect_errno() . ") " . mysqli_connect_error()); 
    } else { 
     $sql = "INSERT INTO items_offer (offer_name, offer_need, offer_amount)" 
       ."VALUES ('$adminOfferName', '$adminOfferNeed', '$adminOfferAmount')"; 
     mysqli_query($conns, $sql) or die ("Failed query".mysqli_error($conns)); 
    } 
} 
+0

Да, я знаю, это было только начало: p, но спасибо в любом случае – eklundkristoffer

1
<?php 
    function custom_new_offer($conns,$adminOfferName,$adminOfferNeed,$adminOfferAmount) { 
    $sql = "INSERT INTO items_offer (offer_name, offer_need, offer_amount) VALUES ('$adminOfferName', '$adminOfferNeed','$adminOfferAmount')"; 

    mysqli_query($conns,$sql); 
} 
?> 
Смежные вопросы