2017-04-11 11 views
0

私はAJAXを使ってデータベースMySQLからフォームを完成しようとしています。私はこれを持っている瞬間のために選択したAJAXでフォームを完成させるには?

スクリプト

function showService(str) 
{ 
    $(function() { 
     $("#service").autocomplete({ 
      source: "getservice.php", 
      select: function(event, ui) { 
       event.preventDefault(); 
       $('#Nazwa').val(ui.item.Nazwa); 
       $('#DATE').val(ui.item.DATE); 
       $('#Lczba').val(ui.item.Lczba); 
       $('#Laureaci').val(ui.item.Laureaci); 
      } 
     }); 
    }); 

これは選択です:

<select class="checkonkursu" name="konkursu" onChange="showService(this.value)"> 
    <option value="">Seleccione un konkursu</option> 
    <?php 
     $query = mysql_query("SELECT Nazwa FROM konkursu ORDER BY Nazwa asc", $conexion); 

     while($row = mysql_fetch_array($query)) { 
      echo '<option value="'.$row['Id_konkursu'].'">'.$row['Nazwa'].'</option>'; 
     } 
    ?> 
</select> 

そしてここでは、データベースへの呼び出しのためのコードです

<?php 
    if (isset($_GET['term'])){ 
     # conectare la base de datos 
     [email protected]_connect("localhost", "user", "password", "Namedatabae"); 

    $return_arr = array(); 
    /* Si la conexión a la base de datos , ejecuta instrucción SQL. */ 
    if ($con) 
    { 
     $fetch = mysqli_query($con,"SELECT * FROM konkursu); 
     /* Recuperar y almacenar en conjunto los resultados de la consulta.*/ 
     while ($row = mysqli_fetch_array($fetch)) { 

      $row_array['Nazwa']=$row['Nazwa']; 
      $row_array['Lczba']=$row['Lczba']; 
      $row_array['DATE']=$row['DATE']; 
      $row_array['Laureaci']=$row['Laureaci']; 

      array_push($return_arr,$row_array); 
     } 
    } 

    /* Cierra la conexión. */ 
    mysqli_close($con); 

    /* Codifica el resultado del array en JSON. */ 
    echo json_encode($return_arr); 

    } 
?> 

確かにそれはとても悪いコードですが、私はそれを勉強してごめんねです。

+0

どのようなエラーが表示されますか?何がうまくいかない?私たちは問題を見つけるのを助けることができますが、あなたが探していることを教えてくれるのはあなた次第です。誰かがコードを書くことを望むなら、誰かを雇う。答えを得る質問の作成に関する有益な情報については、「質問する方法」を参照してください。 –

+0

'error_reporting(E_ALL);を追加してください。 ini_set( 'display_errors'、1); 'あなたのページの上に。 '$ fetch = mysqli_query($ con、" SELECT * FROM konkursu); '(missing a")にタイプミスがありますか? PHPにエラーを表示させて、@を取り除いてください。編集:プラス:mysql_ *とmysqli_ *の組み合わせを使用していますか?あなたの選択あなたが持っている 'するmysql_query(" SELECT ...) 'それは' mysqli_query' – OldPadawan

+0

何人かを雇うが、私はすべてのように学びたい...私はあなたに問題がないことを願っています... –

答えて

0

私はあなたの質問を正しく理解しています。あなたは単にデータベースからのレコードのIDである値と対応する名前である名前をHTML選択に入力したいだけです。

ここではjQuery showService関数が重複しているようです。あなたがしようとしているオプションのエコーにselectの値を設定することができます。しかしながら

$query = mysql_query("SELECT Nazwa FROM konkursu ORDER BY Nazwa asc", $conexion); 

の誤差がMancharyが指摘したように(MySQLのは推奨されているように)、これはmysqli_queryであるべきです。しかし、また、あなたの引数が混ざっているので、行は次のようになります。

$query = mysqli_query($con, "SELECT Nazwa FROM konkursu ORDER BY Nazwa ASC") 

また一般的な方法は、クエリが失敗した場合にはそう

$sql = "SELECT Nazwa FROM konkursu ORDER BY Nazwa ASC"; 
$qry = mysqli_query($con, $sql) or die(mysqli_error($con)); 

としてこれを書き換えるために、あなたは(ない受信します常に便利です)エラーメッセージ。しかし、少なくとも問題を指摘するものがあります。

私は選択を一般的な英語で書いていますが、それは他の人を助けながらあなたにとってまだ役立つことを希望します。

<select class="foo" name="selector"> 
<option value="#">Select an Option</option> 
<?php 

    $con= mysqli_connect("localhost", "user", "password", "db"); 
    $qry = "SELECT * FROM Table"; 
    $res = mysqli_query($con, $qry) or die(mysqli_error($con)); 
    while($row = mysqli_fetch_assoc($res)){ 
     echo "<option value='".$row['Id']."'>".$row['Name']."</option>"; 
    } 
?> 
</select> 
関連する問題