Похоже, вы путаете действия на стороне сервера и на стороне клиента. PDO работает на стороне сервера и связывается с сервером базы данных. JavaScript (в данном случае jQuery) работает на стороне клиента и работает на DOM. AJAX является своего рода связью между этими двумя.
Поэтому, если вы хотите заполнить поля ввода некоторыми значениями из базы данных, вы можете сделать это на стороне сервера:*
<?php
//run query, fetch array and store it in $sport
?>
<input type="text" name="full_name" value="<?php echo $sport['full-name']; ?>" />
<input type="text" name="short_name" value="<?php echo $sport['short-name']; ?>" />
<input type="text" name="abbreviation" value="<?php echo $sport['abb-name']; ?>" />
Или вы можете сделать это на стороне клиента (например, если пользователь щелкает ссылку / кнопку / что угодно):
<?php
//this is the script you make an AJAX-request to, e.g. get_data.php
//run query, fetch array and store it in $sport
echo json_encode($sport); //echo the array in JSON-format
Это страница, предоставляемая пользователю:
...
<input type="text" name="full_name" id="input-full-name" value="" />
<input type="text" name="short_name" id="input-short-name" value="" />
<input type="text" name="abbreviation" id="input-abb-name" value="" />
...
<button id="populate_btn">Populate Data</button>
<scrip>
$('#populate_btn').click(functiion(){
$.post('get_data.php', {}, function(sport) {
//sport now contains the json-array
$.each(sport, function(key, value) {
$('#input-'+key).val(value);
});
});
});
</script>
Это очень простой пример, но я надеюсь, что вы поняли идею.Также обратите внимание, что данный пример AJAX работает, только если ключи массива совпадают с id
-атрибутами полей ввода в некотором роде, например: $sport['full-name'] and <input id="input-full-name" />
.Это значительно облегчает работу с ним.