Привет! Мне нужна помощь, когда я продолжаю получать неопределенную ошибку индекса из браузера. На самом деле я пытаюсь использовать AJAX POST для публикации ключа и значения, чтобы я мог извлечь данные из моего файла API JSON для отдыха и сохранить их в переменной, но я понимаю, что в своей папке main.php я получаю неопределенную ошибку индекса. Вот почему мой метод поста AJAX не работает. Кажется, что метод post, использующий URL, не работает в моем файле main.php, поэтому, когда я пытаюсь использовать AJAX, я не могу опубликовать ключ и значение. Это как-то связано с моим файлом htaccess? Но сохранение данных в базе данных с использованием метода post пока проблем не вызывает.
Ошибка:
Примечание: неопределенный индекс: код авторизации в /path/to/folder/api/main.php на линии9
htaccess
Options +Indexes
<files .htaccess>
Order Allow,Deny
Deny from all
</files>
<Directory />
<LimitExcept GET POST HEAD>
deny from all
</LimitExcept>
</Directory>
DirectoryIndex uc.html main.php
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{SERVER_NAME}/$1 [R=307,L]
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [OR]
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR]
RewriteCond %{HTTP_USER_AGENT} ^Custo [OR]
RewriteCond %{HTTP_USER_AGENT} ^DISCo [OR]
RewriteCond %{HTTP_USER_AGENT} ^WebCapture.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Webdupe.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Pockey.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^DiscoPump.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^InternetSeer.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^HTTrack.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^FlashGet.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^GetRight.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*HTTrack.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*MemoWeb.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*FileHound.*$
RewriteRule .* - [R=404,L,NC]
RewriteRule ^([a-z0-9_-]+)/([a-z0-9_-]+)/([a-z0-9_-]+)/([a-z0-9_-]+)/([a-z0-9_-]+)/?$ main.php?page=$1&action=$2&p=$3&q=$4&r=$4 [L,NC,QSA]
RewriteRule ^([a-z0-9_-]+)/([a-z0-9_-]+)/([a-z0-9_-]+)/([a-z0-9_-]+)/?$ main.php?page=$1&action=$2&p=$3&q=$4 [L,NC,QSA]
RewriteRule ^([a-z0-9_-]+)/([a-z0-9_-]+)/([a-z0-9_-]+)/?$ main.php?page=$1&action=$2&p=$3 [L,NC,QSA]
RewriteRule ^([a-z0-9_-]+)/([a-z0-9_-]+)/?$ main.php?page=$1&action=$2 [L,NC,QSA]
RewriteRule ^([a-z0-9_-]+)/?$ main.php?page=$1 [L,NC,QSA]
# L makes this the last rule that this specific condition will match
# NC makes the rule non case sensitive
# $ in the regular expression makes the matching stop
AJAX, расположенный в index.php, не вызывает сообщение console.log
$(document).ready(function(){
$('#mySelect').change(function(){
var month = $('#mySelect').val();
$.post('../../api/donor/donor',{
piechart : month
},function(data,status){
console.log('Hello');
}
});
});
main.php
Я получаюошибка (Примечание: неопределенный индекс: код авторизации в пути / к / папке / api / main.php в строке 9)
<?php
include('../database.php');
include('../config.php');
$key = $_POST['authcode'];
if($key != AUTHKEY){
echo 'Authentication Code Not Found!';
exit;
}
require_once($page_api.'/'.$action_api.'.php');
?>
RESTFUL API
В этой части, если я использую $ _REQUESTи опубликовать на мой URL
example.com / api / donor / donor? piechart = value
Я не получу никакой ошибки, но когда я использую $ _POST тот же URL-пост
example.com / api / donor / donor? Piechart1 = значение
Я получаю ошибку. Я не могу использовать $ _REQUEST, потому что я хочу использовать AJAX для публикации ключа и значения для извлечения данных из файла JSON.
<?php
//Get total number of donors
$SELECT = "SELECT * FROM ".DB_PREFIX."user WHERE fld_type = 1";
$stmt = $conn ->query($SELECT);
$result = mysqli_fetch_array($stmt);
$total = mysqli_num_rows($stmt);
$test = $_REQUEST['piechart'];
$test1 = $_POST['piechart1'];
if(isset($_POST['piechart'])){
$data = array();
foreach($stmt as $row){
$object['id'] = $row['id'];
$object['name'] = $row['fld_name'];
$object['blood'] = $row['fld_blood'];
$object['email'] = $row['fld_email'];
$object['phone'] = $row['fld_phonenumber'];
$object['total donors'] = strval($total);
array_push($data,$object);
}
$json['success'] = 1;
$json['message'] = "Success";
$json['data'] = $data;
echo json_encode($json);
}
?>