Curl сохранение результатов в переменную и использование на другой странице

silmarion

Полезный
Регистрация
21 Июн 2012
Сообщения
194
Реакции
19
Добрый день
Есть функция
Код:
  function curl( $url ) {
  $ch = curl_init( $url );
  curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
  curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false );
  curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );
$response = curl_exec( $ch );

$resp=explode(':',$response);   
$resp = str_replace( array('{','}',']','"'), '', $resp);
//print_r($resp);   
$inserting=end($resp);

curl_close( $ch );
return json_decode($response , true);
}

Выводит результат на страницу, как кроме вывода на страницу сохранить значение в переменную, чтобы можно было после вывода оперировать переменной $inserting?
 
$inserting = curl($url);
Не?
 
Добрый день
Есть функция
Код:
  function curl( $url ) {
  $ch = curl_init( $url );
  curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
  curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false );
  curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );
$response = curl_exec( $ch );

$resp=explode(':',$response);  
$resp = str_replace( array('{','}',']','"'), '', $resp);
//print_r($resp);  
$inserting=end($resp);

curl_close( $ch );
return json_decode($response , true);
}

Выводит результат на страницу, как кроме вывода на страницу сохранить значение в переменную, чтобы можно было после вывода оперировать переменной $inserting?

Не очень понятно объясняетесь. Возможно вам вот Для просмотра ссылки Войди или Зарегистрируйся?
 
$inserting = curl($url);
Не?

Не очень понятно объясняетесь. Возможно вам вот Для просмотра ссылки Войди или Зарегистрируйся?
Мне нужно использовать переменную
$inserting вне функции.
Пролистал вашу ссылку
Пример #1 Использование global
Вроде бы как подходит


но
Код:
function curl( $url ) {
$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false );
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );
global $inserting;
$response = curl_exec( $ch );

$resp=explode(':',$response);
$resp = str_replace( array('{','}',']','"'), '', $resp);
//print_r($resp);
$inserting=end($resp);

curl_close( $ch );
return json_decode($response , true);
}
curl();
echo $inserting;

echo $inserting; ничего не выводит
Может неправильно понял как использовать?
 
Мне нужно использовать переменную
$inserting вне функции.
Пролистал вашу ссылку
Пример #1 Использование global
Вроде бы как подходит


но
Код:
function curl( $url ) {
$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false );
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );
global $inserting;
$response = curl_exec( $ch );

$resp=explode(':',$response);
$resp = str_replace( array('{','}',']','"'), '', $resp);
//print_r($resp);
$inserting=end($resp);

curl_close( $ch );
return json_decode($response , true);
}
curl();
echo $inserting;

echo $inserting; ничего не выводит
Может неправильно понял как использовать?

global позволяет использовать переменную внутри функции, для использования ее вне функции инициализируйте ее вне функции.

Код:
$inserting='';
function curl( $url ) {
$ch = curl_init( $url );
 
У вас на возврат идёт return json_decode($response , true); Если в $response будет невалидный json, то echo вернёт пустую строку.

Пробуйте заменить на return $inserting;

По ходу выполнения скрипта расставьте var_dump(); с именами ваших переменных, чтобы лучше понимать что происходит.
 
постойте...
curl();
echo $inserting;

У вас адрес должен передаваться функции curl()
разве нет?
В вашем коде он пустой, это опечатка или вы скрыли просто переменную?
 
Я тут что-то замудрил уже с ним.

В общем пошел немного другим способом
Вывожу тем же скриптом информацию на страницу

далее использовал вот такое
Код:
<script type='text/javascript'>
var xxx = document.getElementById("video").innerHTML;
document.write(xxx);
</script>

Получаю всю нужную мне информацию, но никак не могу найти нормальный способ, как поместить этот xxx в php переменную $xxx чтобы затем с ней поработать?

Нашел
Код:
<script type='text/javascript'>
var xxx = document.getElementById("video").innerHTML;

</script>

  
<?
$ups = "<script type='text/javascript' language='javascript'>document.write(xxx);</script>";

echo $ups;

?>
 
Вы из яваскрипта таким образом не передадите в php значение переменной
яваскрипт исполняется после того как пхп сгенерил страницу

Поясните что вам сделать-то нужно? я правильно ли понял задумку вашу?
 
Да, нашел косяк свой

Код:
<script type='text/javascript'>
var xxx = document.getElementById("video").innerHTML;
</script>
<?
$ups = "<script type='text/javascript' language='javascript'>document.write(xxx);</script>";
echo $ups;
?>
мне этот $ups надо подставить сюда
Код:
$sql = "INSERT INTO `table` (`id`, `article`) VALUES  ($myid, $ups)";
:alko::alko::alko:

Может аяксом как-то можно?
 
Последнее редактирование:
Назад
Сверху