Problema con sql y sqli

  • Autor Autor mxsoun
  • Fecha de inicio Fecha de inicio
M

mxsoun

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
buenas noches estoy trabajando este codigo
$query_Rcli = "SELECT * FROM clientes WHERE Activo = 'SI'";
$Rcli = mysql_query($query_Rcli, $conection) or die(mysql_error());
$row_Rcli = mysql_fetch_assoc($Rcli);
$totalRows_Rcli = mysql_num_rows($Rcli);
pero tengo error ya que no se usa sql si no sqli por que tengo xampp
entonces e buscado por toda la red
y trato de realizar lo siguiente:

global $c;
$c = new mysqli("localhost", "root", "", "bdcyv");
$Rcli = $mysqli->query("SELECT * FROM clientes WHERE Activo = 'SI'", $c);
$row = $Rcli->fetch_assoc();
echo htmlentities($row['_message']);
$totalRows_Rcli = mysql_num_rows($Rcli);


pero me manda error

Notice: Undefined variable: mysqli in C:\xampp\htdocs\p\admin\clilisbaja.php on line 4

Fatal error: Uncaught Error: Call to a member function query() on null in C:\xampp\htdocs\p\admin\clilisbaja.php:4 Stack trace: #0 {main} thrown in C:\xampp\htdocs\p\admin\clilisbaja.php on line 4

y nada mas no doy con el error alguien me puede apoyar en saber que tengo mal ? ya hasta busque en la web de php y siempre me sale el error de Uncaught Error: Call to a member function query() on null in
 
$Rcli = $mysqli->query("SELECT * FROM clientes WHERE Activo = 'SI'", $c);

Ahó está el error, cambia mysqli por c, que es el nombre que le diste a la variable al crear el objeto. :topsy_turvy:
 
$Rcli = $mysqli->query("SELECT * FROM clientes WHERE Activo = 'SI'", $c);

Ahó está el error, cambia mysqli por c, que es el nombre que le diste a la variable al crear el objeto. :topsy_turvy:

el codigo quedo asi
global $c;
$c = new mysqli("localhost", "root", "", "bdcyv");
$Rcli = $c->query("SELECT * FROM clientes WHERE Activo = 'SI'", $c);
$row = $Rcli->fetch_assoc();
echo htmlentities($row['_message']);
$totalRows_Rcli = mysql_num_rows($Rcli);

me sale esto

Fatal error: Uncaught Error: Call to a member function fetch_assoc() on null in C:\xampp\htdocs\p\admin\clilisbaja.php:5 Stack trace: #0 {main} thrown in C:\xampp\htdocs\p\admin\clilisbaja.php on line 5

Warning: mysqli::query() expects parameter 2 to be integer, object given in C:\xampp\htdocs\p\admin\clilisbaja.php on line 4
 
el codigo quedo asi
global $c;
$c = new mysqli("localhost", "root", "", "bdcyv");
$Rcli = $c->query("SELECT * FROM clientes WHERE Activo = 'SI'", $c);
$row = $Rcli->fetch_assoc();
echo htmlentities($row['_message']);
$totalRows_Rcli = mysql_num_rows($Rcli);

me sale esto

Fatal error: Uncaught Error: Call to a member function fetch_assoc() on null in C:\xampp\htdocs\p\admin\clilisbaja.php:5 Stack trace: #0 {main} thrown in C:\xampp\htdocs\p\admin\clilisbaja.php on line 5

Warning: mysqli::query() expects parameter 2 to be integer, object given in C:\xampp\htdocs\p\admin\clilisbaja.php on line 4

a query no necesitas ponerle la variable $c, estás trabajando con objetos. :encouragement:

- - - Actualizado - - -

Por lo mismo te recomiendo usar fetch_object en lugar de fetch_assoc
 
a query no necesitas ponerle la variable $c, estás trabajando con objetos. :encouragement:

- - - Actualizado - - -

Por lo mismo te recomiendo usar fetch_object en lugar de fetch_assoc

tengo otro error con
Fatal error: Uncaught Error: Call to undefined function mysql_num_rows() in C:\xampp\htdocs\p\admin\clilisbaja.php:6 Stack trace: #0 {main} thrown in C:\xampp\htdocs\p\admin\clilisbaja.php on line 6

el code esta asi

global $c;
$c = new mysqli("localhost", "root", "", "bdcyv");
$Rcli = $c->query("SELECT * FROM clientes WHERE Activo = 'SI'");
$row = $Rcli->fetch_object();
$totalRows_Rcli = mysql_num_rows($Rcli);
 
tengo otro error con
Fatal error: Uncaught Error: Call to undefined function mysql_num_rows() in C:\xampp\htdocs\p\admin\clilisbaja.php:6 Stack trace: #0 {main} thrown in C:\xampp\htdocs\p\admin\clilisbaja.php on line 6

el code esta asi

global $c;
$c = new mysqli("localhost", "root", "", "bdcyv");
$Rcli = $c->query("SELECT * FROM clientes WHERE Activo = 'SI'");
$row = $Rcli->fetch_object();
$totalRows_Rcli = mysql_num_rows($Rcli);

XD :distant: hazlo igual que todo lo demás.

$totalRows_Rcli = $Rcli->num_rows;

Les dan la mano y agarran el brazo :neglected:XD
 
XD :distant: hazlo igual que todo lo demás.

$totalRows_Rcli = $Rcli->num_rows;

Les dan la mano y agarran el brazo :neglected:XD
perdon por tanta molestia, tengo un error que dice

Cannot use object of type stdClass as array in C:\xampp\htdocs\p\admin\clilisbaja.php:66 Stack trace: #0 {main} thrown in C:\xampp\htdocs\p\admin\clilisbaja.php on line 66
en esa linea tengo

<td><?php echo $row_Rcli['IDcli']; ?></td>
 
perdon por tanta molestia, tengo un error que dice

Cannot use object of type stdClass as array in C:\xampp\htdocs\p\admin\clilisbaja.php:66 Stack trace: #0 {main} thrown in C:\xampp\htdocs\p\admin\clilisbaja.php on line 66
en esa linea tengo

<td><?php echo $row_Rcli['IDcli']; ?></td>

como dejaste la otra parte del código?
 
quedo asi

global $c;
$c = new mysqli("localhost", "root", "", "bdcyv");
$Rcli = $c->query("SELECT * FROM clientes WHERE Activo = 'SI'");
$row_Rcli = $Rcli->fetch_object();
$totalRows_Rcli = $Rcli->num_rows;

- - - Actualizado - - -

como dejaste la otra parte del código?

a esa te refieres ?
 
quedo asi

global $c;
$c = new mysqli("localhost", "root", "", "bdcyv");
$Rcli = $c->query("SELECT * FROM clientes WHERE Activo = 'SI'");
$row_Rcli = $Rcli->fetch_object();
$totalRows_Rcli = $Rcli->num_rows;

- - - Actualizado - - -



a esa te refieres ?

$row_Rcli es un objeto, no un array.

<td><?php echo $row_Rcli->IDcli; ?></td>
 
$row_Rcli es un objeto, no un array.

<td><?php echo $row_Rcli->IDcli; ?></td>

listo muchas gracias.
ahora tengo una consulta como se puede poner la configuración osea la selección de la db y todo en un archivo aparte ?
es correcto en la forma que lo cree ?
 
Pues pon la config en otro php y lo agregas a ese con include.
 
ahora el problema es, que no me muestra los clientes que podra estar mal ? 😕

- - - Actualizado - - -

Pues pon la config en otro php y lo agregas a ese con include.

ahora el problema es, que no me muestra los clientes que podra estar mal ? 😕
 
si no es error de php, usa echo $Rcli->error para ver cual es el error
 
Última edición:
me imagini que es <?php echo $row_Rcli->IDcli; ?>

- - - Actualizado - - -



el error

Notice: Undefined property: mysqli_result::$erro in

perdon fue con error !! y sale lo mismo

Trata de escribir dentro de las etiquetas
PHP:
php
eso hará más facil que otros podamos leer y analizar tu código.

Por último la conexión se requiere una sola vez, yo te recomiendo es que uses la función require_once();

PHP:
<?php
   require_once(conexion.php);
   //Tus otros códigos
?>
 
si no es error de php, usa echo $Rcli->error para ver cual es el error

por aca otra consulta
PHP:
$Rcli = $c->query("SELECT * FROM clientes WHERE IDcli = %s", $colname_Rcli);


$row_Rcli = $Rcli->mysql_fetch_assoc($Rcli);
$totalRows_Rcli = $Rcli->num_rows;
Fatal error: Uncaught Error: Call to a member function mysql_fetch_assoc() on boolean in
 
[MENTION=182260]mxsoun[/MENTION] lo mejor para ti es que lo hagas de la forma tradicional ?
ejemplo

antes era así:

mysql_connect();

pues ahora solo tienes que agregar (i)

mysqli_connect();

si no conoces la funciones mysql de php estudia
 
lo que pasa es que de forma tradicional me muestra muchos errores, y el ver sintaxis $totalRows_Rcli = $Rcli->num_rows; como de este tipo me desubica.
pero ya encontre el error.

- - - Actualizado - - -

si no es error de php, usa echo $Rcli->error para ver cual es el error

bueno por aca en concreto lo que estoy haciendo es que por metodo get envio valor de 1 2 o 3 etc... esto es para cliente 1 o dos etc. ya tengo la base de datos conectada y todo pero me muestra error
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given

Warning: mysqli_stmt_num_rows() expects parameter 1 to be mysqli_stmt, boolean given
y el codigo que tengo es el siguiente:

Insertar CODE, HTML o PHP:
$c = new mysqli("localhost", "root", "", "bdcyv");
$sql = "SELECT * FROM clientes WHERE 'IDcli' = %s, '$colname_Rcli', 'int' " ;
$salida = [];
$Rcli = $c->query($sql);

$row_Rcli = mysqli_fetch_assoc($Rcli);
$totalRows_Rcli= mysqli_stmt_num_rows($Rcli);

segun yo estabien, pero no se por que tengo esos errores. y por lo tanto no me muestra el cliente que quiero modificar.

- - - Actualizado - - -

no se si esta de forma correcta esta linea
PHP:
$sql = "SELECT * FROM clientes WHERE 'IDcli = %s' '$colname_Rcli' 'int'  "  ;
pienso que alli esta el error ya no me muestra ningun error solo que no me muestra el cliente.
 
Atrás
Arriba