Hej,
Jag får problem när jag öppnar och stänger kopplingen till en databasen...
Fatal error: Cannot redeclare opendb() (previously declared in C:\Inetpub\wwwroot\php\condb.php:5) in C:\Inetpub\wwwroot\php\condb.php on line 3
Koden...
<?php
session_register("inloggning");
?>
<?php
//Lägg till en kund
if ($\_POST\['ny_kund'\] == "Skicka") {
require "condb.php";
$link=openDB();
$query="SELECT \* FROM customer WHERE Username='".$\_POST\['Användarnamn'\]."' AND Password='".$\_POST\['Användarnamn'\]."'";
$result = queryDB($query, $link);
if(!($rad=mysql_fetch_array($result))) {
$query = "INSERT INTO customer (Firstname, Lastname, Address, ZipCode, City, Country, Phone, Email, Username, Password, RegDate)
VALUES ('".$\_POST\['Förnamn'\]."', '".$\_POST\['Efternamn'\]."',
'".$\_POST\['Adress'\]."', ".$\_POST\['Postnummer'\].", '".$\_POST\['Ort'\]."', '".$\_POST\['Land'\]."', ".$\_POST\['Telefon'\].",
'".$\_POST\['E-post'\]."', '".$\_POST\['Användarnamn'\]."', '".$\_POST\['Lösenord'\]."', NOW())";
$result= queryDB($query, $link);
echo "\<SCRIPT language=\\"JavaScript\\"\>\\n";
echo "alert (\\"Välkommen som kund till oss, om du loggar in kan du ändra dina uppgifter och förenklar ett köp.\\")";
echo "\</SCRIPT\>\\n";
}else { //Om Username redan finns...
echo "\<SCRIPT language=\\"JavaScript\\"\>\\n";
echo "alert (\\"Tyvärr, ditt användarnamn var upptaget. Prova ett annat.\\")";
echo "\</SCRIPT\>\\n";
$registrera=back;
}
closeDB($link);
}
//Uppdatera kunduppgifter
if ($\_POST\['uppdatera_kund'\] == "Uppdatera") {
require "condb.php";
$link=openDB();
$cid = $\_SESSION\['inloggning'\]\[$id\]\["CID"\];
$result= queryDB("UPDATE customer SET Firstname='".$\_POST\['Förnamn'\]."' , Lastname='".$\_POST\['Efternamn'\]."' ,
Address='".$\_POST\['Adress'\]."' , ZipCode='".$\_POST\['Postnummer'\]."' , City='".$\_POST\['Ort'\]."' , Country='".$\_POST\['Land'\]."' ,
Phone='".$\_POST\['Telefon'\]."' , Email='".$\_POST\['E-post'\]."' , Username='".$\_POST\['Användarnamn'\]."' , Password='".$\_POST\['Lösenord'\]."' WHERE CID=$cid", $link);
closeDB($link);
}
?>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="webshop.css" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms*[n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers*.document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args*);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+', felaktig e-postadress.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+', får bara innehålla siffror.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+', måste innehålla ett nummer mellan '+min+' och '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+', uppgift saknas.\n'; }
} if (errors) alert('Följande inmatning(ar) innehåller fel:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#ffffff" background="images/main_bg.gif" leftmargin="0" topmargin="0">
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0" background="images/left.png">
<tr>
<td align="left" valign="top">
<?php
if($_POST['action']=='Skicka') {
kolla_inloggning();
}
if($registrera=="" && $_SESSION['inloggning'][$id]["inloggad"]=="") {
logga_in();
}
if ($_SESSION['inloggning'][$id]["inloggad"]=="ja") {
kund_meny();
}
if($registrera=="nykund") {
nykund();
}
if($registrera=="back") { //Om nykunds användarnamn redan finns kommer man att gå ett steg tillbaka för att slippa skriva om allt.
echo "<SCRIPT language=\"JavaScript\">\n";
echo "history.go(-1)";
echo "</SCRIPT>\n";
}
?>
</td>
</tr>
</table>
</body></html>
<?php
function logga_in() {
echo "\<table width=\\"98%\\" align=\\"right\\"\>\\n";
echo "\<p\>\<span class=\\"rubrik\\"\>Logga in\</span\>\</p\>";
echo "\<tr class='head'\>\<th\>\<div align=\\"left\\"\>Användarnamn\</div\>\</th\>\<th\>\<div align=\\"left\\"\>Lösenord\</div\>\</th\>\<th\>\</th\>\</tr\>";
echo(
"\<tr align=\\"left\\" valign=\\"top\\" class=\\"even\\"\>".
"\<td\>
\<form method='post' action='login.php'\>
\<input type='text' name='user'\>
\</td\>".
"\<td\>
\<input type='text' name='pass'\>
\</td\>".
"\<td\>
\<input type='submit' name='action' class='buttons' value='Skicka'\>
\</form\>
\</td\>".
"\<tr align=\\"left\\" valign=\\"top\\"\>".
"\<td colspan=\\"3\\"\>
\<p align=\\"left\\"\> \<img src=\\"images/pilhoger.gif\\" alt=\\"Ny kund?\\"\> \<a href=\\"login.php?registrera=nykund\\"\>Ny kund?\</a\>\</p\>
\</td\>".
"\</tr\>\\n");
echo "\</table\>";
}
?>
<?php
function kund_meny() { //Meny när man loggat in.
require "condb.php";
$link=openDB();
$cid = $\_SESSION\['inloggning'\]\[$id\]\["CID"\]; //Den inloggades CID (customer id).
$result= queryDB("SELECT \* from customer WHERE CID=$cid", $link);
if (mysql_num_rows($result) \> 0)
$kundrad = mysql_fetch_row($result);
echo "<form action=\"login.php\" method=\"POST\" name=\"nykund\" onSubmit=\"MM_validateForm('Förnamn','','R','Efternamn','','R','Adress','','R','Postnummer','','RisNum','Ort','','R','Land','','R','Telefon','','RisNum','E-post','','RisEmail','Användarnamn','','R','Lösenord','','R');return document.MM_returnValue\">";
echo "<table width=\"98%\" align=\"right\">\n";
echo "<p><span class=\"rubrik\">Dina kunduppgifter</span></p>";
echo (
"<TR>".
"<TD COLSPAN=4>Fält markerat med <SPAN STYLE='color: red'>*</SPAN>
är obligatoriskt.</TD>".
"</TR>".
"<TR>".
"<TD>Förnamn: <SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD COLSPAN=3><input type=text name=Förnamn value=\"$kundrad[1]\" SIZE=25 MAXLENGTH=50></TD>".
"</TR>".
"<TR>".
"<TD>Efternamn: <SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD COLSPAN=3><INPUT TYPE=TEXT NAME=Efternamn value=\"$kundrad[2]\" SIZE=25 MAXLENGTH=50></TD>".
"</TR>".
"<TR>".
"<TD>Gatuadress: <SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD COLSPAN=3><INPUT TYPE=TEXT NAME=Adress value=\"$kundrad[3]\" SIZE=25 MAXLENGTH=50></TD>".
"</TR>".
"<TR>".
"<TD>Postnr:<SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD><INPUT TYPE=TEXT NAME=Postnummer value=\"$kundrad[4]\" SIZE=6 MAXLENGTH=6></TD>".
"<TD>Ort:<SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD><INPUT TYPE=TEXT NAME=Ort value=\"$kundrad[5]\" SIZE=15 MAXLENGTH=50></TD>".
"</TR>".
"<TR>".
"<TD>E-post:<SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD><INPUT TYPE=TEXT NAME=E-post value=\"$kundrad[8]\" SIZE=15 MAXLENGTH=50></TD>".
"<TD>Telefon:<SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD><input type=TEXT name=Telefon value=\"$kundrad[7]\" size=15 maxlength=50></TD>".
"</TR>".
"<TR>".
"<TD>Land:</TD>".
"<TD COLSPAN=3><SELECT SIZE=1 NAME=Land>
<OPTION SELECTED VALUE=Sverige>Sverige</OPTION>
</SELECT></TD>".
"</TR>".
"<TR>".
"<TD>Användarnamn:<SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD><INPUT TYPE=TEXT NAME=Användarnamn value=\"$kundrad[9]\" SIZE=15 MAXLENGTH=20></TD>".
"<TD>Lösenord:<SPAN STYLE='color: red'>*</SPAN></TD>".
"<TD><input type=password name=Lösenord value=\"$kundrad[10]\" size=13 maxlength=20></TD>".
"</TR>".
"<TR>".
"<TD COLSPAN=4> </TD>".
"</TR>".
"<TR>".
"<TD COLSPAN=3> </TD>".
"<TD align=\"center\"><input class=\"buttons\" type=\"submit\" name=\"uppdatera_kund\" value=\"Uppdatera\"></TD>".
"</TR>\n");
echo "</table>";
echo "</form>";
closeDB($link);
}
?>
<?php
function kolla_inloggning() {
require "condb.php";
$link=openDB();
$username = $_POST['user'];
$password = $_POST['pass'];
$result = queryDB("SELECT CID, Username, Password FROM customer WHERE Username='$username' AND password='$password'", $link);
if(!($user=mysql_fetch_array($result))) {
echo "<SCRIPT language=\"JavaScript\">\n";
echo "alert (\"Tyvärr, felaktigt användarnamn eller lösenord, prova igen?\")";
echo "</SCRIPT>\n";
} else {
$inloggad = "ja";
$CID = "$user[CID]";
$_SESSION['inloggning'][$id]["inloggad"]=$inloggad;
$_SESSION['inloggning'][$id]["CID"]=$CID;
kund_meny();
}
closeDB($link);
}
?>
Koden är något stympad....
condb.php tror jag är rätt men är inte säker... Är det någon som ser felet i kodan ovan? Tillägas bör att allt funkar, dvs logga in, lägga in en användara och uppdatera en användare. Bara det att felmedellande poppar upp varje gång något i formulär ska skickas.
/Johnny***