warning solucion parameter num_rows mysqli_result mysqli_query mysqli_num_rows mysql_num_rows given expects error php mysql

solucion - select count php



PHP y MySQL: mysqli_num_rows() espera que el parĂ¡metro 1 sea mysqli_result, boolean dado (2)

La consulta no devolvió ninguna fila o es errónea, por lo tanto, se devuelve FALSE . Cambiarlo a

if (!$dbc || mysqli_num_rows($dbc) == 0)

mysqli_num_rows :

Valores de retorno

Devuelve VERDADERO en caso de éxito o FALSO en caso de error. Para SELECT, SHOW, DESCRIBE o EXPLAIN mysqli_query () devolverá un objeto de resultado.

Estoy intentando integrar HTML Purifier http://htmlpurifier.org/ para filtrar los datos enviados por el usuario, pero me aparece el siguiente error. Y me preguntaba cómo puedo solucionar este problema.

Obtuve el siguiente error.

on line 22: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given

línea 22 es.

if (mysqli_num_rows($dbc) == 0) {

Aquí está el código php.

if (isset($_POST[''submitted''])) { // Handle the form. require_once ''../../htmlpurifier/library/HTMLPurifier.auto.php''; $config = HTMLPurifier_Config::createDefault(); $config->set(''Core.Encoding'', ''UTF-8''); // replace with your encoding $config->set(''HTML.Doctype'', ''XHTML 1.0 Strict''); // replace with your doctype $purifier = new HTMLPurifier($config); $mysqli = mysqli_connect("localhost", "root", "", "sitename"); $dbc = mysqli_query($mysqli,"SELECT users.*, profile.* FROM users INNER JOIN contact_info ON contact_info.user_id = users.user_id WHERE users.user_id=3"); $about_me = mysqli_real_escape_string($mysqli, $purifier->purify($_POST[''about_me''])); $interests = mysqli_real_escape_string($mysqli, $purifier->purify($_POST[''interests''])); if (mysqli_num_rows($dbc) == 0) { $mysqli = mysqli_connect("localhost", "root", "", "sitename"); $dbc = mysqli_query($mysqli,"INSERT INTO profile (user_id, about_me, interests) VALUES (''$user_id'', ''$about_me'', ''$interests'')"); } if ($dbc == TRUE) { $dbc = mysqli_query($mysqli,"UPDATE profile SET about_me = ''$about_me'', interests = ''$interests'' WHERE user_id = ''$user_id''"); echo ''<p class="changes-saved">Your changes have been saved!</p>''; } if (!$dbc) { // There was an error...do something about it here... print mysqli_error($mysqli); return; } }


$dbc está volviendo falso. Su consulta tiene un error:

SELECT users.*, profile.* --You do not join with profile anywhere. FROM users INNER JOIN contact_info ON contact_info.user_id = users.user_id WHERE users.user_id=3");

La solución para esto en general ha sido descrita por Raveren.