我正在開發一個自定義軟件包,它接受一個表單輸入,將它與表格進行比較並在屏幕上顯示相關信息,我正確地設置了傳輸和模式設置(我希望!我遵循BobsGuides.com的指南),我可以從表中讀回來,沒有問題。當我開始實施表單輸入時,我的問題就開始了。ModX自定義軟件包xPDO語句沒有正確評估
基本上我發佈的會話變量從來沒有得到接收,所以isset從未評估爲真,我只是看到一遍又一遍的形式。
我只是剛剛開始使用PHP,而且當涉及到xPDO時我是一個完整的newb,因此我接受這些可能不僅僅是我沒有注意到的一些事情,但如果有人能指引我朝着正確的方向行事,我會非常感激。
<?php
$path = MODX_CORE_PATH . 'components/dataease/';
var_dump($_POST['submit']);
var_dump($_POST['accNo']);
// get POST variable this is captured
$accNo = $_POST['accNo'];
$output = '';
// Check if form has been submitted
if (isset($_POST['submit'])) {
// Get info from the database
$query = $modx->newQuery('accno');
$query->select($modx->getSelectColumns('Dataease','Dataease','',array('*')));
$query->where(array('accNumber:LIKE' => '$accNo'));
var_dump($query);
// Place it into a variable for output
if (!$query) {
return "Query failed";
} else {
$dataease = $modx->getCollection('Dataease',$query);
// Count the returned rows, should only ever be 1
$output .= '<p>Total: '. count($dataease) . '</p>';
// Show the found data
foreach($dataease as $sql) {
$fields = $sql->toArray();
$output .= $modx->getChunk('showData', $fields);
}
}
return $output;
} else {
// Get the form chunk
$form = $modx->getChunk('dataEntryForm');
return $form;
}
這是我的形式塊
<h2>Enter Account Number:</h2>
<form method="POST" action="">
<input name="accNo" type="text"/>
<input name="submit" type="submit" value="submit" />
</form>
在腳本的頂部添加'var_dump($ _ POST);'以查看發佈到頁面的內容。另外,如果你不打算在你的表單上設置「action」屬性,那麼最好不要離開它。 – okyanet 2013-02-21 15:47:12