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

438
Views
Notificaciones PHP AJAX si la consulta MySQL no devuelve filas

Situación

Tengo un script de trabajo que envía una solicitud ajax a get_code.php . Este script se ejecuta desde la página principal: index.php . El script get_code.php consulta mi base de datos MySQL en busca de una fila y luego envía los datos a index.php .

Código actual

jQuery en index.php

 <script type="text/javascript"> $("#CMTCode").click(function(){ var cde = $("#cmtcodeinput").val(); $.ajax({ method:'POST', url:'get_code.php', data: {va_code:cde}, dataType: 'json', success: function(output_string){ $('#rtable').append(output_string); $("#cmtcodeinput").val(''); var prc = $(".price:last"); prc.focus(); } }); }); </script>

Script PHP get_code.php

 <?php include('dbc.php'); $code = $_POST['va_code']; $cq = mysql_query("SELECT * FROM variants where va_code='$code'")or die(mysql_error()); if(!$cq){ mysql_close(); echo json_encode('There was an error running the query: ' . mysql_error()); }elseif(!mysql_num_rows($cq)){ mysql_close(); echo json_encode('No results returned'); }else{ $output_string = ''; $output_string .= '<tr>'; while($row = mysql_fetch_assoc($cq)) { $output_string .= '<td>'.$row['cmtcost'].'</td>'; //etc. etc. lots more output here } $output_string .= '</tr>'; } mysql_close(); echo json_encode($output_string); ?>

Problema

Sin embargo, si no se encuentran resultados para la consulta, no se devuelve nada en la página para notificar al usuario. Idealmente, me gustaría abrir un modal o mostrar un div en el que pueda usar los datos ingresados por el usuario. Simplemente no puedo resolver por mi vida cómo verificar si $cq no arroja resultados, y si es así, mostrar algo en index.php como una notificación que dice 'No se encontró su código'.

Agradecido de cualquier ayuda

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Podría devolver un indicador de resultado. Esta es una buena lógica y fácil de entender.

Si no se encontró ninguna fila:

 die(json_encode(['result' => false, 'error' => 'No code was found']));

Si se encuentra algún código:

 die(json_encode(['result' => true, 'output' => $output_string]));

Y en js:

 ... success: function(data){ if (!data.result) { alert(data.error); } else { $('#rtable').append(data.output); $("#cmtcodeinput").val(''); var prc = $(".price:last"); prc.focus(); } } ...

Espero eso ayude.

about 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!