Mísíte objektově orientovaný a procedurální styl mysqli API:
Používáte objektově orientovaný :
$result = new mysqli('localhost', 'user', 'password', 'db');
A pak procedurální :
echo "Error with MySQL Query: ".mysqli_error();
Měli byste použít buď OO, nebo procedurální -- ale ne obojí; a pokud zvolíte procedurální, funkce očekávají identifikátor odkazu předaný jako parametr.
Například mysqli_error
by měl být volán buď pomocí objektově orientovaného API :
$link = new mysqli(...);
echo $link->error;
Nebo procedurální API:
$link = mysqli_connect(...);
echo mysqli_error($link);
(Samozřejmě to nezmění skutečnost, že máte ve svém SQL dotazu chybu, ale umožní vám to získat chybovou zprávu, která by měla pomoci najít příčinu této chyby)