我尝试将旧版扩展程序从TYPO3 4.7迁移到7.6。问题是我没有得到任何错误输出,只有我的后端刷新,这使得调试很困难。也许有人可以看到导致这种情况的代码中出现了什么问题。这个扩展是在PHP 5.3上开发的,我在TYPO3 7.6上使用5.6。
$linksToApproveWithoutCategory = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows( 'uid,label,pid,description,href', $theTable, $theField . '=' . $GLOBALS['TYPO3_DB']->quoteStr( $theValue, $theTable ) . ' ' . $whereClause, $groupBy, $orderBy, $limit );
if(count($linksToApproveWithoutCategory) > 0) {
// Links without category
for($i = 0; $i < count($linksToApproveWithoutCategory); $i++) {
$content .= '<form action="' . $_SERVER['PHP_SELF'] . '" method="POST">';
// Alternating row colors
$content .= $switch ? '<tr bgcolor="' . $doc['bgColor5'] . '">' : '<tr>' ;
$switch = !$switch;
// Starting content
$content .= '<td style="vertical-align:top;"><input type="text" name="label" value="' . $linksToApproveWithoutCategory[$i]['label'] . '" size="30" /></td>';
$content .= '<td><textarea name="description" rows="5">' . \TYPO3\CMS\Core\Utility\GeneralUtility::formatForTextarea( $linksToApproveWithoutCategory[$i]['description'] ) . '</textarea></td>';
$content .= '<td style="vertical-align:top;"><input type="text" name="href" value="' . $linksToApproveWithoutCategory[$i]['href'] . '" size="30" /></td>';
$content .= '<td style="vertical-align:top;"><select name="categoryUID"><option value="0"></option>';
foreach((array) $categories as $category) {
$content .= '<option value="' . $category['uid'] . '">';
if($category['parent_category'] > 0) {
$content .= '-- ';
}
$content .= $category['label'] . '</option>';
}
$content .= '</select></td>';
$content .= '<td style="vertical-align:top;"><input type="image" src="/fileadmin/user_upload/action_accept.gif" style="border:0px;" alt="' . $GLOBALS['LANG']->getLL( 'ViewLinksToApprove_accept' ) . '" title="' . $GLOBALS['LANG']->getLL( 'ViewLinksToApprove_accept' ) . '" /></td>';
$content .= "<td style=\"vertical-align:top;\"><a href=\"?action=getViewDeleteLink&id=" . $this->id . "&uid=" . $linksToApproveWithoutCategory[$i]['uid'] . "\"><img src=/fileadmin/user_upload/action_delete.gif\" border=\"0\" alt=\"" . $GLOBALS['LANG']->getLL( 'ViewLinksToApprove_delete' ) . "\" title=\"" . $GLOBALS['LANG']->getLL( 'ViewLinksToApprove_delete' ) . "\"></a></td>";
$content .= '</tr>';
$content .= '<input type="hidden" name="id" value="' . $this->id . '" /><input type="hidden" name="uid" value="' . $linksToApproveWithoutCategory[$i]['uid'] . '" /><input type="hidden" name="action" value="getViewAcceptLink" /></form>';
}
}
我更改了一些已弃用的命名空间,但按下提交按钮时会发生刷新。
答案 0 :(得分:0)
我认为你错过了TYPO3 6.2的适应性
在6.2中,所有旧的类名仍然可用。所以你的扩展工作正常,你可以生成一个弃用日志。也许您可以使用7.中可用的compatibility6层。否则您需要盲目地更正旧的扩展:指定具有完整命名空间的所有类,查找已弃用的函数和类的替换。
弃用清单:
- https://api.typo3.org/typo3cms/7/html/deprecated.html
- https://api.typo3.org/typo3cms/62/html/deprecated.html
- https://api.typo3.org/typo3cms/61/html/deprecated.html
- https://api.typo3.org/typo3cms/60/html/deprecated.html
- https://api.typo3.org/typo3cms/47/html/deprecated.html
- https://api.typo3.org/typo3cms/45/html/deprecated.html