表单不会在SOME页面之间传递POST数据

时间:2013-11-12 08:35:12

标签: php forms post joomla php-5.4

问题是某些网页确实无效。这是一个Joomla网站,例如管理员部分工作的登录表单,但在某些页面上排序或编辑内容的表单不会传递POST数据,而在其他页面上则不会。问题现在也在前端,并且它的形式与过去2年一样。 网站最近搬到了新主机,PHP 5.4 ,这要求我隐藏一些E_STRICT通知,但就是这样。 我很确定这个新版本的PHP可以解决这个问题。

以下是目前最重要的页面代码。

<form action="<?php echo $_SERVER["PHP_SELF"] ?>?option=com_jumi&fileid=7&Itemid=100&goto=jobsave" method="post" enctype="application/x-www-form-urlencoded" target="_self">
<table>
    <tbody>
        <tr>
            <td>Category: </td>
            <td>
                <select name="jCat" size="1">
                    <?php foreach($cats as $jcat): ?>
                    <option value="<?php echo $jcat['pk_categorie']; ?>" <?php if($jCategory == $jcat['pk_categorie']) echo 'selected="selected"'; ?>><?php echo $jcat['nom_categorie']; ?></option>
                    <?php endforeach; ?>
                </select>
            </td>
        </tr>
        <tr>
            <td>Job: </td>
            <td><input type="text" name="jobCode" value="<?php echo $jobCode ?>" /></td>
        </tr>
        <tr>
            <td>Title(english): </td>
            <td><input type="text" name="jTitle" value="<?php echo $jTitle ?>" /></td>
        </tr>
        <tr>
            <td>Titre(français): </td>
            <td><input type="text" name="jTitleFr" value="<?php echo $jTitleFr ?>" /></td>
        </tr>
        <tr>
            <td valign="top">Description(english): </td>
            <td><textarea name="jDesc" rows="10" cols="30"><?php echo $jDesc ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Description(français): </td>
            <td><textarea name="jDescFr" rows="10" cols="30"><?php echo $jDescFr ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Requirements(english): </td>
            <td><textarea name="jRequ" rows="10" cols="30"><?php echo $jRequ ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Requirements(français): </td>
            <td><textarea name="jRequFr" rows="10" cols="30"><?php echo $jRequFr ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Schedule(english): </td>
            <td><textarea name="jSched" rows="10" cols="30"><?php echo $jSched ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Schedule(français): </td>
            <td><textarea name="jSchedFr" rows="10" cols="30"><?php echo $jSchedFr ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Salary(english): </td>
            <td><textarea name="jSalary" rows="10" cols="30"><?php echo $jSalary ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Salary(français): </td>
            <td><textarea name="jSalaryFr" rows="10" cols="30"><?php echo $jSalaryFr ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Application Process(english): </td>
            <td><textarea name="jAppli" rows="10" cols="30"><?php echo $jAppli ?></textarea></td>
        </tr>
        <tr>
            <td valign="top">Application Process(français): </td>
            <td><textarea name="jAppliFr" rows="10" cols="30"><?php echo $jAppliFr ?></textarea></td>
        </tr>
        <tr>
            <td>Send CV to: </td>
            <td>
                <select name="jCV" size="1">
                    <?php foreach($users as $juser): ?>
                    <option <?php if($jCV == $juser['pk_user']) echo 'selected="selected"'; ?> value="<?php echo $juser['pk_user']; ?>"><?php echo $juser['nom_user']; ?></option>
                    <?php endforeach; ?>
                </select>
            </td>
        </tr>
        <tr>
            <td>Status: </td>
            <td>
                <select name="jStatus">
                    <option <?php if($jStatus == 1) echo 'selected="selected"'; ?> value="1">Activate</option>
                    <option <?php if($jStatus == 0) echo 'selected="selected"'; ?> value="0">Deactivate</option>
                </select>
            </td>
        </tr>
        <tr>
            <td colspan="2" align="center"><input type="submit" name="" value="Save" /></td>
        </tr>
    </tbody>
</table>
<input type="hidden" name="jid" value="<?php echo $jid ?>" />
<input type="hidden" name="<?php echo JUtility::getToken() ?>" value="1" />

同样,这个工作了几年,自从这次更新以来,它没有将任何帖子数据传递到页面。

编辑:接收数据的代码,我对其后的所有其他内容进行了评论,因为它与第一步POST数据缺失无关。

<?php
// jobs Admin
require('components/com_jumi/files/jobsAdmin/configuration.php');
$document =& JFactory::getDocument();
$css = JURI::base().'components/com_jumi/files/jobsAdmin/style.css';
$document =& JFactory::getDocument();
$document->addStyleSheet($css);
jimport( 'joomla.html.html.form' );
echo '<pre>' . print_r( $_POST, true ) . '</pre>';
?>

此外,我尝试将print_r作为第一个,它仍然是空的。

0 个答案:

没有答案