Php 我的Drupal上包含的问题

Php 我的Drupal上包含的问题,php,drupal,Php,Drupal,我在我的drupal站点中遇到了第三方系统集成问题。 对不起我的英语,我来自俄罗斯,但我会尽力解释我的问题 整合理念: 2.php文件 2php脚本行(包括 功能(s) 问题是: 此脚本调用外部perl (.pl)脚本。Perl脚本读取 参数(通过传输的参数) url)并生成内容 我看不到这个perl脚本,但我 他在工作,但不是在我的办公室 页码:) 2个php文件: spectrum\u view.php <?php $url = "http://young.spectr

我在我的drupal站点中遇到了第三方系统集成问题。 对不起我的英语,我来自俄罗斯,但我会尽力解释我的问题

整合理念

  • 2
    .php
    文件
  • 2
    php脚本
    行(包括 功能(s)
问题是

  • 此脚本调用外部perl (.pl)脚本。Perl脚本读取 参数(通过传输的参数) url)并生成内容

  • 我看不到这个perl脚本,但我 他在工作,但不是在我的办公室 页码:)

2个php文件

spectrum\u view.php

<?php    
$url = "http://young.spectrum.ru/cgi-bin/programs_view.pl";    
$param = $_GET;     
if (!empty($param))
    {
    $url .= "?";
    foreach ($param as $keys=>$value)
                   {
                   $url .= "&".$keys."=".urlencode($value);
                   }
    }    echo $content = file_get_contents($url);    
?>
所以,我解决了这个问题,但不是在drupal中-只有在我的Localohost上,我才创建了一个2页:

form.php:

<?php
$url ="http://young.spectrum.ru/cgi-bin/programs_form.pl";
$params = $_GET;
if (!empty($params)){
    $url .= "?";
    foreach ($params as $keys=>$value) $url .= "&".$keys."=".urlencode($value);
}
$content = file_get_contents($url);
print $content;

**require_once 'view.php';**
?>
<?php
$url = "http://young.spectrum.ru/cgi-bin/programs_view.pl";
$param = $_GET;
if (!empty($param))
 {
 $url .= "?";
 foreach ($param as $keys=>$value)
                {
                $url .= "&".$keys."=".urlencode($value);
                }
 }

$content = file_get_contents($url);
print $content;
?>

view.php:

<?php
$url ="http://young.spectrum.ru/cgi-bin/programs_form.pl";
$params = $_GET;
if (!empty($params)){
    $url .= "?";
    foreach ($params as $keys=>$value) $url .= "&".$keys."=".urlencode($value);
}
$content = file_get_contents($url);
print $content;

**require_once 'view.php';**
?>
<?php
$url = "http://young.spectrum.ru/cgi-bin/programs_view.pl";
$param = $_GET;
if (!empty($param))
 {
 $url .= "?";
 foreach ($param as $keys=>$value)
                {
                $url .= "&".$keys."=".urlencode($value);
                }
 }

$content = file_get_contents($url);
print $content;
?>


=(

我不完全确定您正在尝试做什么。但似乎您希望从perl脚本生成此内容。如果这是一个带有自己模板的特殊页面,您应该将所有这些代码移到template.php中。此文件用于保存您希望为页面创建内容的一些逻辑

就我个人而言,我更愿意创建一个模块来处理所有这些,但是在主题中,用你现在得到的东西可能更容易做到。看起来你正在创建一个表单,以及基于表单的一些内容。这可以在一个模块中完成。你可以创建一个Drupal表单,然后用Drupal处理验证,然后jst将数据提交给pe但是如果您想从perl中获得它,那么使用这个主题可能是最好的。那么您是如何做到的呢

  • 为您使用的tpl.php文件实现一个函数
  • 在这里创建所有的逻辑,你可以复制你使用的php文件,或者只包含它们。导入,将结果分配给一个变量,该变量将在模板文件中访问
  • 在模板中打印变量
  • 在代码中,这看起来像这样:

    //template.php file
    function mytheme_preprocess_somename(&$vars) {
        include('php');
        // Do some logic.
        $vars['form'] = $result_a;
        $vars['my_content'] = $result_b;
    }
    
    // your .tpl.php
    // Some markup here
    <div><?php print $my_content; ?></div>
    <div><?php print $form; ?></div>
    
    //template.php文件
    函数mytheme_preprocess_somename(&$vars){
    包括('php');
    //做一些逻辑分析。
    $vars['form']=$result\u a;
    $vars['my_content']=$result_b;
    }
    //您的.tpl.php
    //这里有一些标记
    

    现在,我不确定您到底在追求什么,但类似的东西应该会帮助您。请注意,在模板文件中如何调用变量很重要,因为您可以覆盖一些Drupal变量,如
    $content
    ,这可能会导致一些错误。

    您可能遇到了安全问题。请注意-这些设置必须在php.ini中具有一致的设置。否则,出于安全原因,您不能包括远程文件