Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

393
Views
Advertencia: mysqli_query() espera al menos 2 parámetros, 1 dado en C:\wamp64\www\OBJEPRO\dbcrud.php en la línea 10

Estoy creando un CRUD simple usando OOP, PHP, pero recibo errores cuando ejecuto add.php y el archivo de actualización y eliminación. El mismo error en todos los archivos (add.php, update.php, delete.php)

Aquí están los errores:

Aviso: índice no definido: ID_proveedor en C:\wamp64\www\OBJEPRO\add.php en la línea 12

Aviso: Índice indefinido: Company_Name en C:\wamp64\www\OBJEPRO\add.php en la línea 12

Advertencia: mysqli_query() espera al menos 2 parámetros, 1 dado en C:\wamp64\www\OBJEPRO\dbcrud.php en la línea 10

Aquí está el código en add.php

 <?php require_once("header.php"); require_once("dbcrud.php"); if (isset($_POST['submit'])) { } $dbcrud=new dbcrud; $result=$dbcrud->create($_POST['Supplier_ID'],$_POST['Company_Name']); if($result){ echo "<br />"; echo "Successfully added."; }else{ echo "<br />"; echo "Error!"; } ?> <p><h3>Add Supplier:</h3></p> <form action="" method="POST"> <p>Supplier ID: <input type="text" name="Supplier_ID"></p> <p>Company Name: <input type="text" name="Company_Name"></p> <p><input type="submit" name="submit" value="Save"></p> </form>

Y aquí está el código en dbcrud.php:

 <?php require_once("dbconn.php"); class dbcrud { public function __construct(){ $dbconn=new dbconn; } public function create($Supplier_ID, $Company_Name){ $result=mysqli_query("INSERT INTO suppliers(Supplier_ID, Company_Name) VALUES('$Supplier_ID','$Company_Name')"); return $result; } public function read(){ $result=mysqli_query("SELECT * suppliers"); return $result; } public function update($Supplier_ID, $Company_Name){ $result=mysqli_query("UPDATE suppliers SET Company_name='{$Company_Name}' WHERE Supplier_ID={$Supplier_ID}'"); return $result; } public function delete($Supplier_ID){ $result=mysqli_query("DELETE FROM suppliers WHERE Supplier_ID={$Supplier_ID}"); return $result; } } ?>

¿Alguien puede ayudarme?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

La documentación de mysqli_query() establece claramente las dos alternativas de cómo usar ese método. Mezclas ambos, lo que no funcionará.

Ignorando una gran cantidad de otros problemas, me atrevo a decir que esta modificación de su clase lo acercará a lo que está buscando. Almacena el objeto de conexión de la base de datos dentro de una propiedad de clase para que pueda reutilizarse para las consultas reales.

 <?php require_once("dbconn.php"); class dbcrud { private $dbconn; public function __construct(){ $this->dbconn = new dbconn; } public function create($Supplier_ID, $Company_Name){ $result = mysqli_query( $this->dbconn, "INSERT INTO suppliers(Supplier_ID, Company_Name) VALUES('$Supplier_ID','$Company_Name')" ); return $result; } public function read(){ $result = mysqli_query( $this->dbconn, "SELECT * FROM suppliers" ); return $result; } public function update($Supplier_ID, $Company_Name){ $result = mysqli_query( $this->dbconn, "UPDATE suppliers SET Company_name='{$Company_Name}' WHERE Supplier_ID={$Supplier_ID}'" ); return $result; } public function delete($Supplier_ID){ $result = mysqli_query( $this->dbconn, "DELETE FROM suppliers WHERE Supplier_ID={$Supplier_ID}" ); return $result; } }

Sin embargo, esto es sólo parte de una solución. Realmente necesita trabajar con algunos tutoriales para aprender a codificar cosas de la base de datos. Por un lado, hay enormes implicaciones de seguridad en su código. Debe conocer los beneficios de usar "declaraciones preparadas" en combinación con "enlace de parámetros" para evitar la vulnerabilidad de inyección de sql.

Así que tome esto como un punto de partida, muchos otros problemas quedan sin respuesta...

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!