我正在尝试创建一个自定义模块,我正在尝试获取MY SQL。
但我一直在
mysql_query()[function.mysql-query]:拒绝用户访问 'scripts'@'localhost'(使用密码:NO)in /home/scripts/public_html/crm/modules/PcPal/book-engineer.php上线 14
制作糖模块时如何访问数据库中的数据?
<?php if(!defined('sugarEntry') || !sugarEntry) die ('Not A valid Entry point'); ?>
<h2>Book an Engineer</h2>
<form method="POST" >
Search Last Name : <input type="text" name="frm_last_name_search" value="<?php echo $_POST['frm_last_name_search']; ?>" />
<input type="submit" value="Search"/>
</form>
<?php
$sql = 'SELECT first_name, last_name, primary_address_street FROM contacts WHERE last_name = \''.$_POST['frm_last_name_search'].'\'';
$results = mysql_query($sql);
while($this_result = mysql_fetch_array($result))
{
print_r($this_result);
}
?>
答案 0 :(得分:2)
使用global
对象$db
执行数据库操作
如果您有模块bean,例如:$bean = new Contact();
,则可以使用$bean->db
代替global $db
。
此外,从表中提取时始终使用deleted = 0
,因为已删除的项目标记为1
。
global $db;
$sql = "SELECT first_name, last_name, primary_address_street FROM contacts
WHERE last_name = '{$db->quote($_POST['frm_last_name_search']}' AND deleted = 0";
$rs = $db->query($sql);
while($row = $db->fetchByAssoc($rs))
{
print_r($row);
}
答案 1 :(得分:2)
您应该考虑将bean方法用于非常常见的查询,因为它更容易,更便携。