2016-04-13 6 views
0

Ich möchte eine Auswahl auf „connect“ mit einem Eingabetext, ohne die Seite neu geladenwählen onChange Update PHP Wert

Dies ist mein Beispiel

<select name="name_select" id="my_select"> 
    <option value="1">first</option> 
    <option value="2">first</option> 
    <option value="3">first</option> 
</select> 

<?php ...query(SELECT name FROM table WHERE id = value) ?> 

dann in var $ name dort Wert von db

ist

Ich denke, ich muss jquery post/get verwenden, aber wie nur var aktualisieren, die ich db überprüfen muss?

+7

AJAX ist für diese – Thamilan

+0

gemeint Sie es mit Ajax-Aufruf erreichen kann, weil Ajax nicht Ihre Seite aktualisieren. Fügen Sie das fragliche Ajax-Tag hinzu. – RJParikh

Antwort

3

Wie Thamizhan sagen in Kommentar, müssen Sie AJAX verwenden.

Hier ist ein einfaches Beispiel:

HTML (index.html)

<select name="name_select" id="my_select"> 
    <option value="1">first</option> 
    <option value="2">first</option> 
    <option value="3">first</option> 
</select> 

JS

$('#my_select').on('change', function() { 
    var selectData = $(this).val(); 
    $.ajax({ 
     type: "POST", 
     url: "custom.php", 
     data: {'selectData': selectData }, 
     success: function (json) { 
      // do things 
     } 
    }); 
} 

PHP (custom.php)

if (isset($_POST['selectData'])) { 
    var_dump($_POST['selectData']); // $_POST['selectData'] is the selected value 
    // query here 
    // and you can return the result if you want to do some things cool ;) 
} 
0
$("#my_select").on("change", function() { 
    $.ajax({ 
     url: "phpfile.php", 
     method: 'POST', 
     data: {val: $(this).val()}, 
     success: function (data) { 
      $("[type='text']").val(data); 

     } 
    }); 
}); 

In phpfile.php

include("db.php"); 

// ... your code ... 

// execute sql(SELECT name FROM table WHERE id = value) and return value. 
0

Bitte löschen Sie eine Sache, warum Sie SQL-Abfrage hier benötigen.

<option value="1">first</option> 

zuerst ist Name und 1 ist Option dort. dann können wir zuerst oder 1 in die Eingabebox setzen, ohne sql und ajax zu verwenden.

Verwendung nur jquery für dieses

$(document).ready(function(){ 
    $("#my_select").change(function(){ 

    var thisval = $(this).val();  
    $("input").val(thisval); 
    }); 
});