Fatal error: Cannot redeclare insert() (previously declared in C:\AppServ\www\connect\function.php:4
error บอกว่า ไม่สามารถตั้งชื่อ function insert อีกครั้งได้
ที่คุณเขียนมา
รบกวนช่วยอธิบายหน่อยนะค่ะ อ๋อลืมบอก ถ้าเราไม่ include file function.php แล้วไม่ join ตารางเราใช้คำสั่งข้างล่างนี้ก็จะไม่มี error อะไร เราไม่เข้าใจ เลยแก้ไม่ถูก รบกวนพี่ๆ เพื่อนๆ ที่เข้าใจเข้ามาอธิบายให้ทีนะค่ะ ขอบคุณค่ะ
ผมว่าคุณอาจจะสร้างฟังชั้น insert ไว้ในไฟล์หลักด้วยรึปล่าว พอ include ตัวfunction.php ที่มีเหมือนกันเลยทำให้มันตีกัน :D
ประวัติการแก้ไข 2012-01-19 08:50:58
Date :
2012-01-19 08:46:39
By :
thaicloud
Error นี้น่าจะเกิดจาก ชื่อ function ซ้ำกัน หรือเรียกซ้ำ ๆ ครับ
Date :
2012-01-19 09:10:24
By :
webmaster
พี่วิน เรางง ค่ะ เราเรียก function.php มาแค่ครั้งเดียวใน file cart.php คือมันมี error ทันทีถ้าเรา join ตาราง พร้อมกับเรียกไฟล์ function.php มา แต่ถ้าเราไม่เรียก function.php แล้วไม่ join ตาราง ใช้แค่ $result=select("products where 1=1 and pro_id='".$_SESSION["strpro_id"]["$i"]."' "); ก็จะ ไม่ error อะไรค่ะ พี่วิน ช่วยอธิบายหน่อยได้ไมค่ะ ไม่เข้าใจค่ะ คือทำระบบซื้อสินค้า ออนไลน์อยู่ค่ะ
เป็นไฟล์ cart.php รับค่ามาเวลาเลือกสินค้าลงตระกร้า
Code (PHP)
<?
ob_start();
//============ Start Session
session_start();
require_once('connect/connect.php');
require_once('connect/function.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="shortcut icon" href="favicon.ico">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>::.Varity of knowledge.::</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
background-image: url(images/c_midle_top.gif);
}
a:link {
text-decoration: none;
}
a:visited {
text-decoration: none;
}
a:hover {
text-decoration: none;
}
a:active {
text-decoration: none;
}
.style17 {
font-family: "Microsoft Sans Serif";
font-size: x-large;
font-weight: bold;
color: #666666;
}
.style18 {
font-family: "Microsoft Sans Serif";
color: #333333;
font-weight: bold;
}
.style26 {font-family: "Microsoft Sans Serif"; font-size: small; }
.style31 {font-family: "Microsoft Sans Serif"; font-weight: bold; font-size: small; color: #333333; }
.style32 {
color: #009900;
font-family: "Microsoft Sans Serif";
font-size: small;
}
-->
</style>
</head>
<body>
<table width="781" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td width="779" bgcolor="#FFFFFF"><table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><?php require_once('head.php'); ?><?
//============ Check if user select product this will check the product is in the cart or not
if($_GET["pro_id"] != "")
{
for($i=0;$i<=count($_SESSION["strpro_id"]);$i++)
{
if($_SESSION["strpro_id"][$i] == $_GET["pro_id"])
{
header("location:$_SERVER[PHP_SELF]");
exit();
}
}
}
//============If user add product this will store these information to Session
if(trim($_GET["pro_id"]) != "")
{
$_SESSION["strP"]=$_SESSION["strP"]+1;
$_SESSION["strpro_id"][$_SESSION[strP]]=$_GET["pro_id"];
$_SESSION["strQuanlity"][$_SESSION[strP]]=1;
session_write_close();
header("location:$_SERVER[PHP_SELF]");
}
//============ If have delete item of purchase
if(trim($_GET["action"]) == "Del")
{
$_SESSION["strpro_id"][$_GET[P]]="";
$_SESSION["strQuanlity"][$_GET[P]]="";
session_write_close();
header("location:$_SERVER[PHP_SELF]");
}
//============ If have update purchase item
if(trim($_POST["action"]) == "Update")
{
for($i=0;$i<count($_POST["txtQua"]);$i++)
{
$strP=$_POST[txtP][$i];
$strQ=$_POST["txtQua"][$i];
if($strQ <= 0)
{
$strQ=1;
}
$_SESSION["strQuanlity"][$strP]=$strQ;
/*
$result=select("product","where 1=1 and ProductID='".$_SESSION["strProductID"][$strP]."'");
if($result["Stock"] < $strQ)
{
$_SESSION["strQuanlity"][$strP]=$result["Stock"];
echo"<script language='JavaScript'>";
echo"alert('Item # [ $result[ProductCode] ] out of Stock');";
echo"</script>";
}
*/
}
session_write_close();
//============ Jump Refresh one more time
header("location:$_SERVER[PHP_SELF]");
}
?> </td>
</tr>
<tr>
<td><table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#f2f2f6" bgcolor="#FFFFFF">
<tr>
<td width="17%" valign="top"><?php require_once('menuleft.php'); ?></td>
<td valign="top"><table width="99%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="center"><img src="images/step1.jpg" width="742" height="57" /></td>
</tr>
<tr>
<td height="46" align="center"><span class="style17">Your cart. </span></td>
</tr>
<tr>
</tr>
<tr>
<td><table width="99%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="right"> <form action="" method="post" name="frmCart" id="frmCart">
<span class="style18"><strong>
</strong></span>
<strong>
<input name="action" type="hidden" id="action" value="Update" />
</strong>
<table width="93%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#333333">
<tr>
<td width="4%" height="33" align="center" bgcolor="#FFFFFF"><span class="style31">No</span></td>
<td width="63%" align="center" bgcolor="#FFFFFF"><span class="style31">Detail</span></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><span class="style31">Price</span></td>
<td width="13%" align="center" bgcolor="#FFFFFF"><span class="style31">Qauntity</span></td>
<td width="9%" align="center" bgcolor="#FFFFFF"><span class="style31">Total</span></td>
</tr>
</table>
<table width="93%" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#333333">
<tr>
<?
//============ Show how many item user had select
$strNum=0;
$strTotal=0;
for($i=0;$i<=count($_SESSION["strpro_id"]);$i++)
{
//============ select information from product table
//$result=select("products where 1=1 and pro_id='".$_SESSION["strpro_id"]["$i"]."' ");
$result=select("products.pro_id,products.pro_name,products.pro_code,products_pictures.pro_id,products_pictures.propic_name from products inner join products_pictures on products.pro_id = products_pictures.pro_id where 1=1 and pro_id='".$_SESSION["strpro_id"]["$i"]."' ");
if($result)
{
$strNum++;
?><td width="4%" height="38" align="center" bgcolor="#FFFFFF"><span class="style26">
<?=$strNum;?>
<br />
<a href="javascript:if(confirm('Do you want to remove this item')==true){window.location='<?=$_SERVER['PHP_SELF'];?>?action=Del&P=<?=$i;?>';}"><img src="images/deleteC.gif" width="12" height="11" border="0" /></a>
</div>
</span></td>
<td width="63%" height="38" align="left" bgcolor="#FFFFFF"><span class="style32">(
<?=$result["pro_code"];?>
) </span> <span class="style26">
<?=$result["pro_name"];?></span><br /></td>
<td width="11%" height="38" bgcolor="#FFFFFF"><span class="style26">
<?=$result["price"];?>
</span></td>
<td width="13%" height="38" align="right" bgcolor="#FFFFFF"><span class="style26">
<input name="txtP[]" type="hidden" id="txtP[]" value="<?=$i;?>" />
<input name="txtQua[]" type="text" id="txtQua<?=$strNum;?>" style="width:30px;text-align:right" value="<?=$_SESSION["strQuanlity"]["$i"];?>" maxlength="3" onchange="checknum(this.value,'txtQua<?=$strNum;?>');" />
<?=$result["unitcall"];?>
<a href="javascript:if(confirm('Do you want to remove this item')==true){window.location='<?=$_SERVER['PHP_SELF'];?>?action=Del&P=<?=$i;?>';}"><br />
</a></span></td>
<td width="9%" height="38" bgcolor="#FFFFFF"><span class="style26">
<?="".number_format(($result["price"]+$result["PriceSend"])*$_SESSION["strQuanlity"]["$i"], 2,'.',',');?>
</span></td>
</tr> <?
$strTotal=$strTotal+(($result["price"]+$result["PriceSend"])*$_SESSION["strQuanlity"]["$i"]);
}
}
?>
<tr>
<td bgcolor="#FFFFFF"> </td>
<td bgcolor="#FFFFFF"><?
if($strNum==0)
{
echo "<br><center><strong><font color=red>YOUR SHOPPING CART IS EMPTY</font></strong></center><br><br>";
}
?></td>
<td bgcolor="#FFFFFF"> </td>
<td bgcolor="#FFFFFF"> </td>
<td bgcolor="#FFFFFF"> </td>
</tr>
<tr>
<td colspan="5"></td>
</tr>
</table>
<hr align="center" width="700" color="#f2f2f6" />
<br />
<table width="93%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#333333">
<tr>
<td width="81%" align="right" bgcolor="#FFFFFF"><span class="style26"><strong>Total</strong> (item) in your cart : </span></td>
<td width="19%" bgcolor="#FFFFFF"><?=$strNum;?></td>
</tr>
<tr>
<td align="right" bgcolor="#FFFFFF"><span class="style26">Shipping cost : </span></td>
<td bgcolor="#FFFFFF"> </td>
</tr>
<tr>
<td align="right" bgcolor="#FFFFFF"><span class="style26"><strong>Total : </strong>(US DOLLAR $) </span></td>
<td bgcolor="#FFFFFF"><?="".number_format($strTotal, 2,'.',',');?></td>
</tr>
</table><br />
<table width="93%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="right"><input name="BtnContinute" type="button" class="button" id="BtnContinute2" value="Continue to shopping" onclick="window.location='shopping_index.php';" />
<?
if($strNum>0)
{?>
<input name="BtnCalu" type="submit" class="button" id="BtnCalu" value="Caculate" />
<input name="BtnPayment" type="button" class="button" id="BtnPayment" value="Check out" onclick="window.location='pay.php';" />
<?}?></td>
</tr>
</table>
<hr align="center" width="750" color="#f2f2f6" />
</form> </td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td colspan="2" valign="top">
<?php require_once('down.php'); ?> </td>
</table></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>
แล้วนี่ก็คือ function.php
Code (PHP)
<?php
//============== Function 㹡ÒÃá·Ã¡¢éÍÁÙÅ ==============
function insert($field,$value,$table)
{
$sql = "INSERT INTO $table ($field) VaLUES ($value)";
//echo $sql;
$result= mysql_query($sql);
return $result;
}
//============== Function 㹡ÒÃź¢éÍÁÙÅ ==============
function delete($table,$condition)
{
$sql ="delete from $table $condition";
$result = mysql_query($sql);
return $result;
}
//=============== Function 㹡ÒÃá¡é䢢éÍÁÙÅ ==================
function update($table,$command,$condition)
{
$sql = "UPDaTE $table SET $command $condition";
$result = mysql_query($sql);
return $result;
}
//=============== Function 㹡ÒÃàÅ×Í¡¢éÍÁÙÅ ==================
function select($table,$condition="")
{
$sql = "select * from $table $condition";
//echo $sql;
$dbquery = mysql_query($sql);
$result= mysql_fetch_array($dbquery);
return $result;
}
//=============== Function 㹡ÒÃàÅ×Í¡¢éÍÁÙÅ·Ñé§ËÁ´ ==================
function selectalldate($table,$condition,$listby)
{
$sql = "select * from $table $condition $listby";
//echo $sql;
$dbquery = mysql_query($sql);
return $dbquery;
}
//=============== select Reccord Max or Min================== // ÍÒ¨¨Ðãªé㹡Òà ´Ö§ ੾ÒпÔÇÊì ËÃ×ÍÃÇÁ¤èÒ ¹Ñº¤èÒ
function selectMaxOrMin($maxormin,$field,$table,$condition)
{
$sql = "select $maxormin($field) as $field from $table $condition";
$dbquery = mysql_query($sql);
$result= mysql_fetch_array($dbquery);
return $result;
}
//=============== Function 㹡ÒÃàÅ×Í¡¢éÍÁÙÅ==================
function selectFistOrLast($table,$condition,$fieldlist,$bylist)
{
$sql = "select * from $table $condition order by $fieldlist $bylist";
$dbquery = mysql_query($sql);
$result= mysql_fetch_array($dbquery);
return $result;
}
//=============== Function 㹡ҵÃǨÊͺµÑÇÍÑ¡ÉâéÍÁÙÅ ==================
function checkcharector($temp)
{
$temp=Trim(eregi_replace ( "'" , "" , $temp));
$temp=Trim(eregi_replace ( "\"" , """ , $temp));
return $temp;
}
//=============== Function 㹡ÒùѺ¨Ó¹Ç¹á¶Ç ==================
function num_record($table,$condition)
{
$sql = "select * from $table $condition";
$dbquery = mysql_query($sql);
$num_rows = mysql_num_rows($dbquery);
return $num_rows;
}
//=============== Function 㹡ÒùѺµÃǨÊͺ¤èÒÇèÒ§ ==================
function JscheckValueNull($form,$field,$msg)
{
echo"\nif(trim(document.$form.$field.value)=='')\n";
echo"{\n";
echo"alert('$msg');\n";
echo"document.$form.$field.focus();\n";
echo"return false;\n";
echo"}\n\n";
}
?>
Date :
2012-01-19 09:30:29
By :
มือใหม่หัดขับ
มองไม่เห็นปัญหาเหมือนกันครับ ถ้าเป็นผมจะลองเปลี่ยนชื่อ function insert เป็นอย่างอื่นเล่นๆดู อย่างเช่น insert2 อาจจะฟลฺุ๊ก เห็นปัญหาก็ได้นะ :)
Date :
2012-01-19 10:06:15
By :
thaicloud
ไฟล์ connect.php เขียนไว้อย่างไรบ้างครับ
Date :
2012-01-19 10:08:05
By :
webmaster
Code (PHP)
?
/*=============== Connect to the database =================*/
$host="...."; //database location
$user_name="...."; //database username
$pass_word="....."; //database password
$db="......"; //database name
//database connection
mysql_connect( $host,$user_name,$pass_word) or die ("Unable to connect to database. Check your connection parameters.");
mysql_select_db($db) or die("Can't select the database");
?>
ไม่ได้โชว์ข้อมูลให้ดูนะค่ะ แต่มั่นใจว่าเรียกถูก เพราะไฟล์อื่นก็ไม่มีปัญหาอะไร หรือมันเกี่ยวกับว่าเราต้อง set up php.ini หรืออะไรทำนองนี้หรือป่าวค่ะ
Date :
2012-01-19 11:53:23
By :
มือใหม่หัดขับ
ก็ไม่น่าจะมีอะไรผิดพลาดครับ ถ้าตามที่ให้มาครับ
Date :
2012-01-19 11:56:51
By :
webmaster
Load balance : Server 00