2013-03-07 108 views
0

我有一個由Dreamweaver CS5創建的簡單insert.php形式。我希望能夠將此新聞標題中的新聞標題輸入到我的數據庫中的「news_headline」列中,然後自動將此標題添加到小寫字母並將空格轉換爲負數的「news_slug」列中。將數據從一個輸入插入到兩個mysql列中

因此,如果我在表單的標題輸入字段中輸入「這是標題」,它會在我的「news_headline」列中輸入「This is a headline」,它會添加「this-is-a-headline 「放到我的」news_slug「欄中。

我得到了下面的代碼至今:

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { 
$news_headline = $_POST['news_headline']; 
$news_slug = str_replace(' ', '-', $news_headline); 

    $insertSQL = sprintf("INSERT INTO tbl_news (news_headline, news_slug) VALUES (%s, %s)", 
        GetSQLValueString($_POST['news_headline'], "text"), 
        GetSQLValueString($_POST['news_slug'], "text")); 

基本休息

mysql_select_db($database_Jahrhundertkomet, $con); 
    $Result1 = mysql_query($insertSQL, $Jahrhundertkomet) or die(mysql_error());} 
    mysql_select_db($database_Jahrhundertkomet, $con); 
    $query_Jahrhundertkomet = "SELECT * FROM tbl_news"; 
    $Jahrhundertkomet = mysql_query($query_Jahrhundertkomet, $con) or die(mysql_error()); 
    $row_Jahrhundertkomet = mysql_fetch_assoc($con); 
    $totalRows_Jahrhundertkomet = mysql_num_rows($con); 
    mysql_free_result($con); 
    ?> 
    <form method="post" name="form1" action="<?php echo $editFormAction; ?>"> 
    <table align="center"> 
    <tr valign="baseline"> 
     <td nowrap align="right">News_headline:</td> 
     <td><input type="text" name="news_headline" value="" size="32"></td> 
    </tr> 
     <tr valign="baseline"> 
     <td nowrap align="right">&nbsp;</td> 
     <td><input type="submit" value="Datensatz einfügen"></td> 
    </tr> 
    </table> 
    <input type="hidden" name="MM_insert" value="form1"> 
</form> 

但是現在,當我在代碼中輸入一個標題它得到的錯誤:列「news_slug」不能爲空。我需要改變什麼才能將news_headline的輸入內容加入news_slug中,並進行轉換?

回答

0

如果你只是想替換空格的分數,你可以使用str_replace: 你也正在使用$_POST['news_slug'];因爲沒有在你的形式命名news_slug輸入不接受任何東西。

試試這個:

$news_headline = $_POST['news_headline']; 
$news_slug = str_replace(' ', '-', $news_headline); 

,並把這些線路只是在此之後一個:

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { 
+0

是的,我在表格中刪除輸入news_slug,因爲我想這是自動添加,這就是點...我嘗試了上面的代碼,但它仍然說,列news_slug不能爲空。因此,我必須指定一個地方,將這個轉換後的news_headline輸入到news_slug列中 – Alatus 2013-03-07 09:58:13

+0

當您在查詢之前打印變量時,您會得到什麼值? – Alvaro 2013-03-07 10:05:31

+0

這是您發佈的代碼的順序? 「新代碼」應該在查詢之前執行。 – Alvaro 2013-03-07 10:07:01

相關問題