php - Trying to bind inputs Inheriting by other input -
i'm trying bind other inputs 1 input, made example saw on internet understand , practice, example made fine , fill data ask when try implement project not nothing, in console, doen't show me error or can tell me happen i'm using php 7 , templates of admin lte
this form
<form name="formulario" id="formulario" method="post"> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <input type="hidden" name="idventa" id="idventa"> <label>numero de viaje:</label> <input type="text" class="form-control" name="num_viaje" id="num_viaje" maxlength="256" placeholder="número de viaje" required> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>cliente:</label> <input type="text" class="form-control" name="nombre" id="nombre" maxlength="256" placeholder="cliente"> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>destino:</label> <input type="text" class="form-control" name="destino" id="destino" maxlength="256" placeholder="destino"> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>operador:</label> <input type="text" class="form-control" name="operador" id="operador" maxlength="256" placeholder="operador" required> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>número de operador:</label> <input type="text" class="form-control" name="idoperador" id="idoperador" maxlength="256" placeholder="numero de operador" required> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>tipo de operación:</label> <input type="text" class="form-control" name="tipooperacion" id="tipooperacion" maxlength="256" placeholder="tipo de operación" required> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>viatico:</label> <input readonly type="text" class="form-control" name="viatico" id="viatico" maxlength="256" placeholder="viatico" required onchange="sumar(this.value);"> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>caseta:</label> <input readonly type="text" class="form-control" name="casetas" id="casetas" maxlength="256" placeholder="casetas" required onchange="sumar(this.value);"> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>extras:</label> <input readonly type="text" class="form-control" name="extras" id="extras" maxlength="256" placeholder="extras" required onchange="sumar(this.value);"> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>cantidad en diesel:</label> <input readonly type="text" class="form-control" name="diesel" id="diesel" maxlength="256" placeholder="diesel" required onchange="sumar(this.value);"> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>desgaste 5%:</label> <input readonly type="text" class="form-control" name="desgaste" id="desgaste" maxlength="256" placeholder="desgaste 5%" onchange="sumar(this.value);"> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>utilidad:</label> <input readonly type="text" class="form-control" name="utilidad" id="utilidad" maxlength="256" placeholder="utilidad" onchange="sumar(this.value);"> </div> <div class="form-group col-lg-6 col-md-6 col-sm-6 col-xs-12"> <label>inversión total:</label> <span id="sptotal"></span> <input readonly type="text" class="form-control" name="total" id="total" maxlength="256" placeholder="total"> </div> <div id="estado">esperando input.</div> <div class="form-group col-lg-12 col-md-12 col-sm-12 col-xs-12"> <button class="btn btn-primary" type="submit" id="btnguardar"><i class="fa fa-save"></i> guardar</button> <button class="btn btn-danger" onclick="cancelarform()" type="button"><i class="fa fa-arrow-circle-left"></i> cancelar</button> </div> </form> the footer have apart , put
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.js"></script> <script type="text/javascript" src="scripts/relleno.js"></script> relleno.php these
$(function(){ /* ponemos evento blur la escucha sobre id nombre en id cliente. */ $('#cliente').on('blur','#nombre',function(){ /* obtenemos el valor del campo */ var valor = this.value; /* si la longitud del valor es mayor 2 caracteres.. */ if(valor.length>=3){ /* cambiamos el estado.. */ $('#estado').html('cargando datos de servidor...'); /* hacemos la consulta ajax */ var consulta = $.ajax({ type:'post', url:'cliente.php', data:{nombre:valor}, datatype:'json' }); /* en caso de que se haya retornado bien.. */ consulta.done(function(data){ if(data.error!==undefined){ $('#estado').html('ha ocurrido un error: '+data.error); return false; } else { if(data.destino!==undefined){$('#nombre #destino').val(data.destino);} if(data.viatico!==undefined){$('#nombre #viatico').val(data.viatico);} if(data.casetas!==undefined){$('#nombre #casetas').val(data.casetas);} if(data.extras!==undefined){$('#nombre #extras').val(data.extras);} if(data.diesel!==undefined){$('#nombre #diesel').val(data.diesel);} if(data.desgaste!==undefined){$('#nombre #desgaste').val(data.desgaste);} if(data.utilidad!==undefined){$('#nombre #utilidad').val(data.utilidad);} if(data.total!==undefined){$('#nombre #total').val(data.total);} $('#estado').html('datos cargados..'); return true; } }); /* si la consulta ha fallado.. */ consulta.fail(function(){ $('#estado').html('ha habido un error contactando el servidor.'); return false; }); } else { /* mostrar error */ $('#estado').html('el nombre tener una longitud mayor 2 caracteres...'); return false; } }); }); and in make search data base these cliente.php
<?php /* conectar una base de datos de mysql invocando al controlador */ $dsn = 'mysql:dbname=dbsistema;host=localhost'; $usuario = 'root'; $contraseña = ''; try { $gbd = new pdo($dsn, $usuario, $contraseña); } catch (pdoexception $e) { echo 'falló la conexión: ' . $e->getmessage(); } if(!empty($_post['nombre'])){ $nombre = $_post['nombre']; $sql = "select * clientes nombre = '$nombre'"; $stmt = $gbd->prepare($sql); $stmt ->execute(); $arrdatos = $stmt->fetchall(pdo::fetch_assoc); var_dump($arrdatos); if($arrdatos){ foreach ($arrdatos $row) { if ($nombre = $row['nombre']) { $return = array ('destino'=>$row['destino'],'viatico'=>$row['viatico'],'casetas'=>$row['casetas'],'extras'=>$row['extras'],'diesel'=>$row['diesel'], 'desgaste'=>$row['desgaste'],'utilidad'=>$row['utilidad'],'total'=>$row['total']); } } } else { $return = array('error'=>'el nombre no esta guardado en la base de datos'); } die(json_encode($return)); } hope can helpme find mistake
your problem on view in $.ajax functtion. data give json statement variables doesnt define (or didnt saw it)
data:{nombre:valor},
on other hand, define datatype:json, datatype json not type of data on submit, definition data, returned ajax call. , maybe, im not sure atm, should stringify data (json.strinfiy(yourjsonobject)) because on data, cant pass direct json objects. when after use $_post access it. data has passed in form of &field=value&field=value&field=value....
Comments
Post a Comment