2017-07-28 15 views
0

私は他の入力を1つの入力でバインドしようとしていますが、以前はインターネット上で理解して練習する例を見せていました。私が尋ねるデータだが、私が私のプロジェクトに実装しようとすると、これは何もしない、コンソールで、何か起こっていることを私に教えてくれるエラーや何かを見せないよ。 私はPHP 7とテンプレートを使用している管理LTE入力をバインドしようとしています他の入力で継承しています

は、これは私が離れて、​​私

を入れているフッタ私のフォーム

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

です

<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は、これらの

$(function(){ 
    /* Ponemos evento blur a 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 a 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 a 2 caracteres...'); 
     return false; 
     } 
    }); 
}); 

と私は、データベースへの検索は、これらは、誰かが私の間違いを見つけることhelpmeでき

<?php 

/* Conectar a 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 * FROM clientes WHERE nombre = '$nombre'"; 
$stmt = $gbd->prepare($sql); 
$stmt ->execute(); 
$arrDatos = $stmt->fetchAll(PDO::FETCH_ASSOC); 
var_dump($arrDatos); 
    if($arrDatos){ 
    foreach ($arrDatos as $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)); 
} 

希望をcliente.phpある

作るところであります

答えて

0

あなたの問題は$ .ajaxファンクションの私の見解です。データとして、あなたは、あなたが定義する(または私はそれを見たdidntの)doesntの変数でJSON文を与える一方

data:{nombre:valor},

、あなたはデータ型を定義する:JSONが、データ型のJSONは提出上のデータのタイプではありません、このajax呼び出しから返されたデータの定義。おそらく、AT&Tがわからない場合は、データ(JSON.strinfiy(yourJSONObject))をストリング化する必要があります。データでは、直接JSONオブジェクトを渡すことができないからです。後で$ _POSTを使ってアクセスした場合でも。次に、データは、&フィールド=値&フィールド=値&フィールド=値....の形式で渡されなければならない。

関連する問題