17. oktober 2006 - 13:54
Der er
23 kommentarer og 1 løsning
Fejl i mit script
Hejsa jeg har sat og kigget mig blind på mit system, som jeg plejer at gøre og kan ikke finde den nok lille fejl jeg har lavet. NOgen som kan se den? Fejlen: Parse error: parse error, unexpected '{' in E:\hjemmesider\fuckingloveyou.com\woox\html\heart.php on line 5 Koden: if ($_GET['Cookie'] != 1) { setcookie('test', 'yesido', time()+9999999); header ('Location: '.$PHP_SELF.'?Cookie=1'); } else if (($_COOKIE['test'] == 'yesido') && (!empty($_GET['name2'])) { $query = mysql_query("SELECT * FROM loved_couple WHERE name = '$_GET[name]' AND name2 = '$_GET[name2]'"); if(mysql_num_rows($query) == 0) { setcookie("couple_$_GET[name]_$_GET[name2]", 1, time()+3600); mysql_query("INSERT INTO loved_couple (name,name2,count) VALUES ('$_GET[name]','$_GET[name2]','1')") or die(mysql_error()); } else if (!isset($_COOKIE['babe_'.$_GET['name'].'_'.$_GET['name2']])) { setcookie("couple_$_GET[name]_$_GET[name2]", 1, time()+3600); mysql_query("UPDATE loved_couple SET count = count+1 WHERE name = '$_GET[name]' AND name2 = '$_GET[name2]'") or die(mysql_error()); } } else if(($_COOKIE['test'] == 'yesido') && (empty($_GET['name2'])) { $query = mysql_query("SELECT * FROM loved_people WHERE name = '$_GET[name]'"); if(mysql_num_rows($query) == 0) { setcookie("people_$_GET[name]", 1, time()+3600); mysql_query("INSERT INTO loved_people (name,count) VALUES ('$_GET[name]','1')") or die(mysql_error()); } else if (!isset($_COOKIE['babe_'.$_GET['name']])) { setcookie("people_$_GET[name]", 1, time()+3600); mysql_query("UPDATE loved_people SET count = count+1 WHERE name = '$_GET[name]'") or die(mysql_error()); } }
Annonceindlæg fra Barco
17. oktober 2006 - 14:11
#1
træk else og if samme til elseif
17. oktober 2006 - 14:14
#2
Der manglede )'er: if ($_GET['Cookie'] != 1) { setcookie('test', 'yesido', time()+9999999); header ('Location: '.$PHP_SELF.'?Cookie=1'); } elseif (($_COOKIE['test'] == 'yesido') && (!empty($_GET['name2']))) { $query = mysql_query("SELECT * FROM loved_couple WHERE name = '$_GET[name]' AND name2 = '$_GET[name2]'"); if(mysql_num_rows($query) == 0) { setcookie("couple_$_GET[name]_$_GET[name2]", 1, time()+3600); mysql_query("INSERT INTO loved_couple (name,name2,count) VALUES ('$_GET[name]','$_GET[name2]','1')") or die(mysql_error()); } elseif (!isset($_COOKIE['babe_'.$_GET['name'].'_'.$_GET['name2']])) { setcookie("couple_$_GET[name]_$_GET[name2]", 1, time()+3600); mysql_query("UPDATE loved_couple SET count = count+1 WHERE name = '$_GET[name]' AND name2 = '$_GET[name2]'") or die(mysql_error()); } } elseif (($_COOKIE['test'] == 'yesido') && (empty($_GET['name2']))) { $query = mysql_query("SELECT * FROM loved_people WHERE name = '$_GET[name]'"); if(mysql_num_rows($query) == 0) { setcookie("people_$_GET[name]", 1, time()+3600); mysql_query("INSERT INTO loved_people (name,count) VALUES ('$_GET[name]','1')") or die(mysql_error()); } elseif (!isset($_COOKIE['babe_'.$_GET['name']])) { setcookie("people_$_GET[name]", 1, time()+3600); mysql_query("UPDATE loved_people SET count = count+1 WHERE name = '$_GET[name]'") or die(mysql_error()); } }
17. oktober 2006 - 14:19
#3
coderdk-> jeg troede ikke der skulle være 3 ')' når der kun er 2 '(' ;-) der skal tilgengæld, som du har gjort, laves noget ved de else if. Om de skal trækkes sammen til elseif eller om der skal tilføjes en '{' så der står } else { if må cmau selv slås med
17. oktober 2006 - 14:21
#4
Argh selvfølgelige, men nu får jeg nye problemer, med dette: if ($_GET['Cookie'] != 1) { setcookie('test', 'yesido', time()+9999999); header ('Location: '.$PHP_SELF.'?Cookie=1'); Nu kan jeg slet ikke åbne siden pga. det.
17. oktober 2006 - 14:24
#5
hvad får du af fejl?
17. oktober 2006 - 14:26
#6
Denne side viderefører ikke forespørgslen korrekt Firefox har opdaget at serveren henviser forespørgelsen for denne adresse på en måde så den aldrig vil blive færdig. * Dette problem kan nogle gange skyldes, at cookies er slået fra, eller modtagelse af cookies er blevet nægtet.
17. oktober 2006 - 14:31
#7
sw_red_6, Hvis du tæller hans originale if's med ( og ) så kan du se der mangler )'er et par steder ;) cmau, Det virker underligt - Det burde da virke, så vidt jeg kan se - Prøv at ændre $PHP_SELF til $_SERVER['PHP_SELF']...
17. oktober 2006 - 14:35
#8
17. oktober 2006 - 14:38
#9
17. oktober 2006 - 14:39
#10
coderdk-> mig der skal have tjekket øjnene
17. oktober 2006 - 14:41
#11
Så kan du vel ændre den til: header('Location: /?Cookie=1'); ? :)
17. oktober 2006 - 14:48
#12
Jamen så er det jeg får fejl igen:
http://www.ad.fuckingloveyou.com/?Cookie=1 Eller ikke fejl, IE kan ikke vise siden og firefox skriver:
"Denne side viderefører ikke forespørgslen korrekt"
17. oktober 2006 - 14:51
#13
Hvordan ser dine rewrite-regler ud?
17. oktober 2006 - 15:11
#14
RewriteEngine On RewriteCond %{HTTP_HOST} ^www.([^.]+).fuckingloveyou.com$ [NC] RewriteRule ^$ /index.php?page=heart.php&name=%1 RewriteCond %{HTTP_HOST} ^www.([^.]+).([^.]+).fuckingloveyou.com$ [NC] RewriteRule ^$ /index.php?page=heart.php&name=%1&name2=%2 RewriteCond %{HTTP_HOST} ^([^.]+).fuckingloveyou.com$ [NC] RewriteCond %1 !^www$ [NC] RewriteRule ^$ /index.php?page=heart.php&name=%1 RewriteCond %{HTTP_HOST} ^([^.]+).([^.]+).fuckingloveyou.com$ [NC] RewriteCond %1 !^w$ [NC] RewriteRule ^$ /index.php?page=heart.php&name=%1&name2=%2
17. oktober 2006 - 15:27
#15
Du kan prøve to ting: 1) header('Location: /?Cookie=1&" . $_SERVER['REQUEST_QUERYSTRING'] ); 2) Prøv at tilføje [QSA] til alle RewriteRules
17. oktober 2006 - 15:33
#16
1) Så bliver adressen for kludret. 2) Hvad er det?
17. oktober 2006 - 15:40
#17
QueryStringAdd til rewrite, den smelter query strings sammen ;)
17. oktober 2006 - 15:48
#18
Hmm aner ikke hvad det er :) Desværre, kan du evt vise mig det?
17. oktober 2006 - 16:46
#20
og qsa gjorde så adressen var nem eller hvordan?
17. oktober 2006 - 17:29
#21
Nej, den tilføjer din Cookie til de eksisterende, som brugeren ikke ser... Virker det ikke?
18. oktober 2006 - 20:28
#22
Så nu får jeg vist ikke fejlen, men en del andre fejl, starter fra en ende af med en af gange.
Hvis en person bare tager linket i toppen og sender til en ven
http://asd.fuckingloveyou.com/?Cookie=1 vil den ikke teste om personen havde cookies, så derfor vil jeg meget gerne om man kunne test for cookie uden at ændre i adressen og uden at bruge iframe og frames.
20. oktober 2006 - 11:26
#23
Nu har jeg simpelthen skrevet hele koden om og har kun problemer med cookie tjek.
Koden kan ses her:
www.fuckingloveyou.com/code.phps Lige meget om jeg har cookie sat til eller fra, så får jeg at vide ved første besøg at jeg ikke har sat cookie til.
Cookie sat:
Hvis jeg så opdaterer siden kører alt som det skal. Skal der en opdatering til før man kan tjekke for cookies?
Ikke sat:
Får jeg stadigvæk at vide jeg ikke har sat cookies, som den jo også skulle skrive.
21. oktober 2006 - 17:46
#24
Opretter et nyt spørgsmål til dette, da alt kode er ændret.
Vi tilbyder markedets bedste kurser inden for webudvikling