Ajax-вызов возвращает целую страницу, а не только значение эха

Я делаю ajax-вызов на .php-страницу, где я делаю запрос к базе данных. Однако, когда я повторяю значение с .php-страницы, возвращается весь html-файл, а не только численное значение, которое мне нужно.

Это мой сценарий ajax:

<script type="text/javascript"> $(document).ready(function() { $("#valuebutton").click(function() { var id1=$('.player1').val(); $.ajax ({ type: "POST", url: "updatevaluebox.php", data: ({g1: id1}), cache: false, success: function(value) { //alert(value); $('#valuebox').val(value); } }); }); }); </script> 

И это php-страница updatevaluebox.php:

 <?php require("connect_db.php"); $q="SELECT price FROM playerlist where id=".$_POST['g1']; $r=mysqli_query($dbc,$q); $price=mysqli_fetch_array($r,MYSQLI_NUM); mysqli_close($dbc); echo $price[0]; ?> 

Оба файла находятся в одном каталоге.

Я проверил другие ответы на этот вопрос в stackoverflow, но ни один из них не работает.

Результат, который я получаю от оператора предупреждения, выглядит так:

 <html> <head><title> </title></head> <body> </body> </html>5.5 

5.5 в конце – единственное значение, в котором я нуждаюсь!

Я установил ajax dataType в текст, но даже это не помогает.

Ага! Вам нужно удалить любой HTML-файл в файле connect_db.php. Я рекомендую хранить переменную в этом файле, проверяя, было ли ваше соединение успешным. Например:

connect_db.php

 $isConnected = false; $dbError = ""; if ($dbc=mysqli_connect('localhost','*****','*****','ff') { $isConnected = true; } else { $dbError = mysqli_connect_error(); } 

другие файлы

 require("connect_db.php"); if($isConnected) { //DO ALL YO STUFF!! } else { //HANDLE THE ERROR AS YOU LIKE, LIKE PRINTING IT OUT echo $dbError; } 

Это позволит вам обрабатывать логику БД в ваших файлах, если не удается подключиться, поэтому вы можете обработать неудачные подключения изящно.