2010-09-22 74 views
0

我已经创建了一个名为'table'的新数据库表。现在我试图将以下代码写入字段中:如何在购物车中的新数据库表中写入

if (isset ($_POST['request'])) { 

$F1 = $_POST['F1']; 
$F2 = $_POST['F2']; 
$F3 = $_POST['F3']; 
$F4 = $_POST['F4']; 

$sql_data_array = array('F1' => zen_db_prepare_input($_POST['F1']), 
'F2' => zen_db_prepare_input($_POST['F2'])); 

zen_db_perform('table', $sql_data_array); 

$db->Execute("insert into requests (F1, F2, F3, F4) values ('".$F1."', '"$F2."', '".$F3."', '".$F4. "')"); 
} 

当我按下提交按钮时,我得到空白页。这意味着我的代码有问题。 错误在哪里?请帮助我。

+0

这是整个代码?你是否因为没有输出任何东西而变得空白?你的数据库插入工作?你有任何错误?您是否通过执行'error_reporting(E_ALL);'和'ini_set('display_errors','1'); – 2010-09-22 07:30:42

回答

0

几件事情:

  1. 不要只听张贴的价值;对它们做一些清理以确保你不会被黑客入侵。

    $F1 = zen_db_prepare_input(zen_sanitize_string($_POST['F1'])); 
    
  2. “table”对于表格来说真的不是一个好名字。这可能是一个保留字,所以你真的想叫它(比如说)“fawad_table”。
    如果你再这样做:

    zen_db_perform('fawad_table', $sql_data_array); 
    

    如果你没有在你的configure.php文件中使用前缀它只会工作。如果你这样做会失败。更好的事情是创造

    ./includes/extra_datafiles/special_tables.php 
    

    这确实有点像

    define('TABLE_FAWAD', DB_PREFIX . 'fawad_table'); 
    

    那么你可以使用

    zen_db_perform(TABLE_FAWAD, $sql_data_array); 
    

,它会带或不带前缀的工作。