Передать исходящие данные с php в html

usergeyv

Знаток
Регистрация
5 Июл 2013
Сообщения
152
Реакции
25
Начну с того что я в php как первоклассник в вывшей математики (учусь).
Вот есть php код, который обращается к другому серверу и возвращает данные:
часть кода

PHP:
function virustotal_scanurl($url, $key){

    // Esta función envia la URL


    // Author: Kenny Lyons aka ih8censorship
   
    // Editado por lipman

    //URL a la que enviaremos los datos
    $url = 'http://www.virustotal.com/api/scan_url.json';
    //Preparamos los campos de lo que vamos a enviar
    $fields = array('url'=>$url, 'key'=>$key);
    $fields_string='';
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string=rtrim($fields_string,'&');

    //Procedemos a enviarlo mediante cURL
    $ch = curl_init();

    curl_setopt($ch,CURLOPT_URL,$url);
     
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $result = curl_exec($ch);

    curl_close($ch);
    //Tras enviarlo, cerramos la conexión y decodeamos el resultado devuelto
    $result = json_decode($result, true);


    if($result['result']=="1"){ //Si todo va bien, devolvemos la ID del scan
        return $result['scan_id'];
    } else {
        return false;
    }

}

function virustotal_geturlreport($key,$resource,$scan=false){

    // Nos devuelve el reporte

    // Author: Kenny Lyons aka ih8censorship
   
    //Editado por lipman   

    //URL a donde enviaremos los datos
    $url = 'http://www.virustotal.com/api/get_url_report.json';
    //Preparamos los campos
    $fields = array('resource'=>$resource, 'key'=>$key,'scan'=>$scan);
    $fields_string='';
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string=rtrim($fields_string,'&');
    //Finalmente, usamos cURL para enviarlo y recoger el resultado
    $ch = curl_init();

    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $result = curl_exec($ch);

    curl_close($ch);

    $result = json_decode($result, true);

    if($scan && $result['result']=="0"){
        return $result['scan_id'];
    } else {
        return $result;
    }

}

и возвращает данные в браузер вида:
Screenshot_12.png

Как передать данные в обработку HTML , что бы получилось что то типа этого:
Screenshot_10.png

Буду признательным за помощь. Если не трудно,продемонстрируйте готовый код.Спасибо
 
Последнее редактирование:
Я тоже не особо разбираюсь в php, но если вывод массива заключить в html тег <pre>, то вывод будет в удобно читаемом виде.
пример:
echo '<pre>';
(вывод массива)
echo '</pre>';
 
Я тоже не особо разбираюсь в php, но если вывод массива заключить в html тег <pre>, то вывод будет в удобно читаемом виде.
пример:
echo '<pre>';
(вывод массива)
echo '</pre>';
Спасибо,чуть лучше стало
Screenshot_13.png
А как же сделать похожее на скрин выше?
 
Шаблон и стили, конечно-же, самостоятельно нужно прикрутить.
PHP:
<?php
...
$report = $result['report'][1];
?>
... какой-то HTML-код ...
<table>
    <tr>
        <td><b>Антивирус</b></td>
        <td><b>Результат</b></td>
    </tr>
<?php foreach($report as $k => $v) { ?>
    <tr>
        <td><?php echo $k; ?></td>
        <td><?php echo ($v == 'clean site') ? 'CLEAN' : 'unrated site'; ?></td>
    </tr>
<?php } ?>
</table>
 
PHP:
<?php
...
$report = $result['report'][1];
?>
... какой-то HTML-код ...
<table>
    <tr>
        <td><b>Антивирус</b></td>
        <td><b>Результат</b></td>
    </tr>
<?php foreach($report as $k => $v) { ?>
    <tr>
        <td><?php echo $k; ?></td>
        <td><?php echo ($v == 'clean site') ? 'CLEAN' : 'unrated site'; ?></td>
    </tr>
<?php } ?>
</table>
Сделал вот так
PHP:
  <?php 
function virustotal_scanurl($url, $key){

    // Esta función envia la URL


    // Author: Kenny Lyons aka ih8censorship
    // Website: http://pasture.sourceforge.net
    // Editado por lipman

    //URL a la que enviaremos los datos
    $url = 'http://www.virustotal.com/api/scan_url.json';
    //Preparamos los campos de lo que vamos a enviar
    $fields = array('url'=>$url, 'key'=>$key);
    $fields_string='';
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string=rtrim($fields_string,'&');

    //Procedemos a enviarlo mediante cURL
    $ch = curl_init();

    curl_setopt($ch,CURLOPT_URL,$url);
     
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $result = curl_exec($ch);

    curl_close($ch);
    //Tras enviarlo, cerramos la conexión y decodeamos el resultado devuelto
    $result = json_decode($result, true);


    if($result['result']=="1"){ //Si todo va bien, devolvemos la ID del scan
        return $result['scan_id'];
    } else {
        return false;
    }

}

function virustotal_geturlreport($key,$resource,$scan=false){

    // Nos devuelve el reporte

    // Author: Kenny Lyons aka ih8censorship
    // Website: http://pasture.sourceforge.net
    //Editado por lipman   

    //URL a donde enviaremos los datos
    $url = 'http://www.virustotal.com/api/get_url_report.json';
    //Preparamos los campos
    $fields = array('resource'=>$resource, 'key'=>$key,'scan'=>$scan);
    $fields_string='';
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string=rtrim($fields_string,'&');
    //Finalmente, usamos cURL para enviarlo y recoger el resultado
    $ch = curl_init();

    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $result = curl_exec($ch);

    curl_close($ch);

    $result = json_decode($result, true);

    if($scan && $result['result']=="0"){
        return $result['scan_id'];
    } else {
       
        return $result;
       
    }

}



$report = $result['report'][1];


?>

<table>
    <tr>
        <td><b>Антивирус</b></td>
        <td><b>Результат</b></td>
    </tr>
<?php foreach($report as $k => $v) { ?>
    <tr>
        <td><?php echo $k; ?></td>
        <td><?php echo ($v == 'clean site') ? 'CLEAN' : 'unrated site'; ?></td>
    </tr>
<?php } ?>
</table>

в ответ:
Screenshot_14.png
 
Последнее редактирование:
@usergeyv, вместо $result переменной подставь в моем примере результат выполнения функции virustotal_geturlreport.
Если я правильно понял, это она возвращает массив с результатами.
 
@usergeyv, вместо $result переменной подставь в моем примере результат выполнения функции virustotal_geturlreport.
Если я правильно понял, это она возвращает массив с результатами.
пол дня мучаюсь ,не выходит ,помоги ,вот весь код
PHP:
<?php
$key = '27c3333320e59560d0c890673b6e839f80037c976f103c969340dbce40';
//Api que se obtiene en el perfil
$file = "http://www.site.link/";
//URL a analizar
$identificador = virustotal_scanurl($file,$key);
$retrieve = virustotal_geturlreport($key,$identificador);
if($retrieve){
    print_r($retrieve); // Array que contiene el reporte
}
function virustotal_scanurl($url, $key){
    // Esta función envia la URL
    // Author: Kenny Lyons aka ih8censorship
    // Website: http://pasture.sourceforge.net
    // Editado por lipman
    //URL a la que enviaremos los datos
    $url = 'http://www.virustotal.com/api/scan_url.json';
    //Preparamos los campos de lo que vamos a enviar
    $fields = array('url'=>$url, 'key'=>$key);
    $fields_string='';
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string=rtrim($fields_string,'&');
    //Procedemos a enviarlo mediante cURL
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
     
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    //Tras enviarlo, cerramos la conexión y decodeamos el resultado devuelto
    $result = json_decode($result, true);
    if($result['result']=="1"){ //Si todo va bien, devolvemos la ID del scan
        return $result['scan_id'];
    } else {
        return false;
    }
}
function virustotal_geturlreport($key,$resource,$scan=false){
    // Nos devuelve el reporte
    // Author: Kenny Lyons aka ih8censorship
    // Website: http://pasture.sourceforge.net
    //Editado por lipman   
    //URL a donde enviaremos los datos
    $url = 'http://www.virustotal.com/api/get_url_report.json';
    //Preparamos los campos
    $fields = array('resource'=>$resource, 'key'=>$key,'scan'=>$scan);
    $fields_string='';
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string=rtrim($fields_string,'&');
    //Finalmente, usamos cURL para enviarlo y recoger el resultado
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    $result = json_decode($result, true);
     if($scan && $result['result']=="0"){
         return $result['scan_id'];
     } else {
         return $result;
     }
}


?>
 
PHP:
<?php
$key = '';
//Api que se obtiene en el perfil
$file = "http://ya.ru";
//URL a analizar
$identificador = virustotal_scanurl($file,$key);
$retrieve = virustotal_geturlreport($key,$identificador);
$report = false;
if($retrieve){
    $report = $retrieve['report'][1];
}
function virustotal_scanurl($url, $key){
    // Esta funcion envia la URL
    // Author: Kenny Lyons aka ih8censorship
    // Website: http://pasture.sourceforge.net
    // Editado por lipman
    //URL a la que enviaremos los datos
    $url = 'http://www.virustotal.com/api/scan_url.json';
    //Preparamos los campos de lo que vamos a enviar
    $fields = array('url'=>$url, 'key'=>$key);
    $fields_string='';
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string=rtrim($fields_string,'&');
    //Procedemos a enviarlo mediante cURL
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
     
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    //Tras enviarlo, cerramos la conexion y decodeamos el resultado devuelto
    $result = json_decode($result, true);
    if($result['result']=="1"){ //Si todo va bien, devolvemos la ID del scan
        return $result['scan_id'];
    } else {
        return false;
    }
}
function virustotal_geturlreport($key,$resource,$scan=false){
    // Nos devuelve el reporte
    // Author: Kenny Lyons aka ih8censorship
    // Website: http://pasture.sourceforge.net
    //Editado por lipman   
    //URL a donde enviaremos los datos
    $url = 'http://www.virustotal.com/api/get_url_report.json';
    //Preparamos los campos
    $fields = array('resource'=>$resource, 'key'=>$key,'scan'=>$scan);
    $fields_string='';
    foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
    $fields_string=rtrim($fields_string,'&');
    //Finalmente, usamos cURL para enviarlo y recoger el resultado
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    $result = json_decode($result, true);
     if($scan && $result['result']=="0"){
         return $result['scan_id'];
     } else {
         return $result;
     }
}
?>
<table>
    <tr>
        <td><b>Антивирус</b></td>
        <td><b>Результат</b></td>
    </tr>
<?php if($report) { foreach($report as $k => $v) { ?>
    <tr>
        <td><?php echo $k; ?></td>
        <td><?php echo ($v == 'clean site') ? 'CLEAN' : 'unrated site'; ?></td>
    </tr>
<?php } } ?>
</table>
 
На virustotal:
Screenshot_15.png
а у меня той же ссылки:


Dr.Web CLEAN
Websense ThreatSeeker CLEAN
ESET CLEAN


что не так?
 
Назад
Сверху