2013-06-20 132 views
-3

我一直在开发客户端Facebook页面的推荐应用程序,她可以编辑自己! 我在将它插入数据库时​​遇到问题!我已经写了它的MySQLi福斯特,但现在已经回到基础,我在这里使用这个代码...MySQL没有选择数据库

<?php 
     $testtitle = preg_replace('#[^a-z]#i', '', $_POST['ts_tt']); 
     $testbody = preg_replace('#[^a-z]#i', '', $_POST['ts_tb']); 
     $compowner = preg_replace('#[^a-z]#i', '', $_POST['ts_co']); 
     $ownertitle = preg_replace('#[^a-z]#i', '', $_POST['ts_ot']); 
     $compname = preg_replace('#[^a-z]#i', '', $_POST['ts_cn']); 
     $compwebsite = preg_replace('#[^a-z]#i', '', $_POST['ts_cw']); 

     include_once "../php_includes/db_conx.php"; 

     $sql = "INSERT INTO testimonials (testtitle, testbody, compowner, ownertitle, compname, compwebsite) 
       VALUES ('$testtitle', '$testbody', '$compowner', '$ownertitle', '$compname', '$compwebsite')"; 
     if (!mysql_query($sql, $connection)){ 
      die('Error: ' . mysql_error()); 
    } 
    exit(); 
?> 

这里是简单的形式,我使用!而且我知道它在桌子上!我只是想快速简单地做...

<form method="post" action="testimonial_new_parse.php" onsubmit="return validate_form ();"> 
    <tr> 
    <td width="12%" align="right" bgcolor="#F5E4A9">Testimonial Full Title</td> 
    <td width="88%" bgcolor="#F5E4A9"><input name="ts_tt" type="text" size="80" maxlength="64" /></td> 
    </tr> 
    <tr> 
    <td align="right" valign="top" bgcolor="#DAEAFA">Testimonial Body</td> 
    <td bgcolor="#DAEAFA"><textarea name="ts_tb" cols="60" rows="16"></textarea></td> 
    </tr> 
    <tr> 
    <td align="right" bgcolor="#D7EECC">Company Owner</td> 
    <td bgcolor="#D7EECC"><input name="ts_co" type="text" maxlength="64" size="80" /></td> 
    </tr> 
    <tr> 
    <td align="right" bgcolor="#D7EECC">Owner Title</td> 
    <td bgcolor="#D7EECC"><input name="ts_ot" type="text" maxlength="64" size="80"/></td> 
    </tr> 
    <tr> 
    <td align="right" bgcolor="#D7EECC">Company Name</td> 
    <td bgcolor="#D7EECC"><input name="ts_cn" type="text" maxlength="64" size="80" /></td> 
    </tr> 
    <tr> 
    <td align="right" bgcolor="#D7EECC">Company Website</td> 
    <td bgcolor="#D7EECC"><input name="ts_cw" type="text" maxlength="64" size="80" /></td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    <td><input type="submit" name="ts_button" value="Create this Testimonial now" /></td> 
    </tr> 
    </form> 

问题是我不断得到的是,Np数据库已被选中! 任何帮助将不胜感激!

+0

告诉我们你在'../ php_includes/db_conx.php'中有什么 – budwiser

回答

2

您缺少连接和数据库选择。在运行查询之前应该执行这两个步骤。

从PHP文件(相应调整):

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); 
if (!$link) { 
    die('Not connected : ' . mysql_error()); 
} 

// make foo the current db 
$db_selected = mysql_select_db('foo', $link); 
if (!$db_selected) { 
    die ('Can\'t use foo : ' . mysql_error()); 
} 
0

这将与你的$连接变量做,你怎么初始化呢?

正如其他人已经提到的,你需要正确初始化它,并选择一个数据库,像这样:

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); 
if (!$link) { 
    die('Not connected : ' . mysql_error()); 
} 

// make foo the current db 
$db_selected = mysql_select_db('foo', $link); 
if (!$db_selected) { 
    die ('Can\'t use foo : ' . mysql_error()); 
} 

还要注意的是,MySQLi扩展优于MySQL的,所以使用,如果你能。

另外,请注意你的HTML代码不会工作,你的“TR”和“TD”必须是在一个表中,这样的:

<table border="1"> 
<tr> 
    <td>row 1, cell 1</td> 
    <td>row 1, cell 2</td> 
</tr> 
<tr> 
    <td>row 2, cell 1</td> 
    <td>row 2, cell 2</td> 
</tr> 
</table> 
+0

欢呼Dany是te问题很多谢谢Dany –

0

可能是连接文件是不正确的。检查连接文件,然后重试。

+0

欢迎来到SO。虽然你的回答是一个很好的努力,但花点时间先研究一下这个问题。你看,这个问题已经过了一年多了,已经回答了,所以OP不太可能再次修改。另外,为了将来,考虑给出一个更完整的答案,并且如果可能的话附上代码示例。 另外我有点没有注意到你的答案和问题之间的任何关系。 –