2015-08-27 4 views
1

У меня есть два веб-сайта, и я могу передавать строки с помощью cURL с веб-сайта на веб-сайт два. Все в порядке.Получите возвращаемое значение с помощью cURL между двумя веб-сайтами.

Но теперь я хочу передать ключ безопасности с веб-сайта один на веб-сайт два и проверить на сайте два, если ключ находится в базе данных сайта два.

Если да -> возвращает истину

Если нет -> вернуть ложные

Это мой код: Эта передача кода ключа строка с Curl на другой веб-сайт.

function dmd_check_key($arg){ 
    $curl = curl_init(); 
    curl_setopt_array($curl, array(
     CURLOPT_RETURNTRANSFER => 1, 
     CURLOPT_URL => 'https://example.de/link/key_generator.php?key='.$arg.'', 
     CURLOPT_USERAGENT => 'Codular Sample cURL Request' 
    )); 
    $resp = curl_exec($curl); 
    curl_close($curl); 
return $resp; 
} 

Этот код находится на веб-сайте два и проверьте, находится ли ключ безопасности в базе данных.

function dmd_key_check($key){ 
    if(isset($_GET['key'])){ 
     // Initialize 
     $database = new medoo([ 
       'database_type' => 'mysql', 
       'database_name' => 'xxx', 
       'server' => 'localhost', 
       'username' => 'xxx', 
       'password' => 'xxx', 
       'charset' => 'utf8' 
     ]); 

     $datas = $database->select("keys", [ 
       "dmd_key", 
       "id" 
     ], [ 
       "dmd_key[=]" => $key 
     ]); 

    if($datas[0]['dmd_key'] == $key){ 
     print 'true'; 
    }else{ 
     print 'false'; 
    } 
    } 
} 

Вы можете увидеть последнее if-предложение. Если ключевая строка равна строке в наборе базы данных, верните true. If not .. return false.

Теперь мой вопрос. Как я могу получить возвращаемое значение с сайта два?

Вот мой AJAX форма:

<script type="text/javascript"> 
jQuery(document).ready(function() { 
    //click event f�r submit button 
    jQuery('.dmd_admin_buttons').click(function() { 

    //Daten von den HTML Feldern in JS-Vars �bersetzen 
    var post = jQuery('input[name=post]'); 
    var page = jQuery('input[name=page]'); 
    var searchbox = jQuery('input[name=searchbox]'); 
    var formidable = jQuery('input[name=formidable]'); 
    var key = jQuery('input[name=key]'); 

    if (jQuery(post).prop("checked")) 
     post.val(1); 
    else 
     post.val(0); 

if (jQuery(page).prop("checked")) 
    page.val(1); 
else 
    page.val(0); 

    if (jQuery(searchbox).prop("checked")) 
    searchbox.val(1); 
else 
    searchbox.val(0); 

    if (jQuery(formidable).prop("checked")) 
    formidable.val(1); 
else 
    formidable.val(0);  

    var data = 'post=' + post.val() + '&page=' + page.val() + '&searchbox=' + searchbox.val() + '&formidable=' + formidable.val() + '&key=' + key.val(); 

    jQuery.ajax({ 
    url: "<?php echo plugins_url('saveData.php', __FILE__); ?>", 
    type: "POST", 
    data: data, 
    success: function(data) { 
     alert(data); 
    } 
}); 
    return false; 
    }); 
}); 
</script> 
+0

просто заменить возвращение с печатью 'истина' или напечатайте 'false' ,,,,, а затем на первом сайте проверьте $ resp ,, это должна быть истинная строка или ложная строка –

+0

что вы получаете от предупреждения? –

+0

неверно я вернулся. – cgee

ответ

1

сайт два должен вывести строки, как

function dmd_key_check($key){ 
    if(isset($_GET['key'])){ 
     // Initialize 
     $database = new medoo([ 
       'database_type' => 'mysql', 
       'database_name' => 'xxx', 
       'server' => 'localhost', 
       'username' => 'xxx', 
       'password' => 'xxx', 
       'charset' => 'utf8' 
     ]); 

     $datas = $database->select("keys", [ 
       "dmd_key", 
       "id" 
     ], [ 
       "dmd_key[=]" => $key 
     ]); 

     if($datas[0]['dmd_key'] == $key){ 
      print json_encode(array('status'=>true)); 
     }else{ 
      print json_encode(array('status'=>false)); 
     } 
    } 
} 

сайт следует проверить $ соотв

function dmd_check_key($arg){ 
    $curl = curl_init(); 
    curl_setopt_array($curl, array(
     CURLOPT_RETURNTRANSFER => 1, 
     CURLOPT_URL => 'https://example.de/link/key_generator.php?key='.$arg.'', 
     CURLOPT_USERAGENT => 'Codular Sample cURL Request' 
    )); 
    $resp = curl_exec($curl); 
    curl_close($curl); 

    $resp = json_decode($resp); 
    if($resp['status'] == 'true'){ 
     //do some thing for true 
    }else{ 
     //do some thing for false 
    } 

} 
+0

Если я включаю ваше предложение if в мою функцию dmd_check_key, моя форма проверяет, что строка ключа запущена с ошибкой. – cgee

+0

pls first var_dump ($ resp), чтобы проверить, что вы получаете, возможно, я ошибаюсь .. просто проверьте возвращаемое значение –

+0

Такая же проблема. Если я включаю var_dump, я получил ошибку. – cgee

Смежные вопросы