Fout in script?
http://members.lycos.nl/flabbo/
Dit zoon stem code:
http://members.lycos.nl/flabbo/in.php?id=5
Krijgen jullie een error?
Dit is de hit-in code.. [ niet door mij geschreven ]
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
ob_start();
include("config.php");
$sql = @mysql_query("SELECT id,naam,url,inhit FROM partners WHERE id='".$_GET['id']."'")or die(mysql_error());
$papflessen = mysql_query("Select count(1) From linken Where id='".$_GET['id']."' And ip='".$_SERVER['REMOTE_ADDR']."'")or die(mysql_error());
$ip = @mysql_query("SELECT ip FROM linken WHERE id='".$_GET['id']."'")or die(mysql_error());
If(mysql_num_rows($sql) == 0){
header("Location: index.php");
} else if (mysql_result($papflessen,0) == "1"){
echo"<SCRIPT language='JavaScript'>alert('Je kunt slechts 1 keer per uur stemmen!')</SCRIPT>";
//header("Location: index.php");
} else if ($ip == "".$_SERVER['REMOTE_ADDR'].""){
echo"<SCRIPT language='JavaScript'>alert('Je kunt slechts 1 keer per uur stemmen!')</SCRIPT>";
} else {
mysql_query("INSERT INTO linken (id, ip) Values ('".$_GET['id']."', '".$_SERVER['REMOTE_ADDR']."')") or die(mysql_error());
mysql_query("UPDATE partners SET inhit=inhit+'1' WHERE id='".$_GET['id']."'")or die(mysql_error());
header("Location: index.php");
}
ob_end_flush();
?>
ob_start();
include("config.php");
$sql = @mysql_query("SELECT id,naam,url,inhit FROM partners WHERE id='".$_GET['id']."'")or die(mysql_error());
$papflessen = mysql_query("Select count(1) From linken Where id='".$_GET['id']."' And ip='".$_SERVER['REMOTE_ADDR']."'")or die(mysql_error());
$ip = @mysql_query("SELECT ip FROM linken WHERE id='".$_GET['id']."'")or die(mysql_error());
If(mysql_num_rows($sql) == 0){
header("Location: index.php");
} else if (mysql_result($papflessen,0) == "1"){
echo"<SCRIPT language='JavaScript'>alert('Je kunt slechts 1 keer per uur stemmen!')</SCRIPT>";
//header("Location: index.php");
} else if ($ip == "".$_SERVER['REMOTE_ADDR'].""){
echo"<SCRIPT language='JavaScript'>alert('Je kunt slechts 1 keer per uur stemmen!')</SCRIPT>";
} else {
mysql_query("INSERT INTO linken (id, ip) Values ('".$_GET['id']."', '".$_SERVER['REMOTE_ADDR']."')") or die(mysql_error());
mysql_query("UPDATE partners SET inhit=inhit+'1' WHERE id='".$_GET['id']."'")or die(mysql_error());
header("Location: index.php");
}
ob_end_flush();
?>
EDIT: Deze error word dus gegeven als je op iemand anders wil stemmen
Duplicate entry '6' for key 1
Gewijzigd op 01/01/1970 01:00:00 door Vince
Als ik wil stemmen krijg ik een wit scherm voor de rest niks. Stem is wel genoteerd.
Duplicate entry '6' for key 1
Gewijzigd op 01/01/1970 01:00:00 door Vince
Licht denk ik zo aan regel 20:
mysql_query("INSERT INTO linken (id, ip) Values ('".$_GET['id']."', '".$_SERVER['REMOTE_ADDR']."')") or die(mysql_error());
Maak hier eens van:
mysql_query("INSERT INTO linken (id, ip) Values ('".$_GET['id']."', '".$_SERVER['REMOTE_ADDR']."')") or die('Foutje zit dus hier' . mysql_error());
Waarvoor dient de tabel linken?
CREATE TABLE `linken` (
`id` int(11) NOT NULL auto_increment,
`ip` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 ;
CREATE TABLE `partners` (
`id` int(11) NOT NULL auto_increment,
`naam` varchar(255) NOT NULL,
`url` text NOT NULL,
`inhit` int(11) NOT NULL,
`uithit` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 ;
CREATE TABLE `site` (
`uur` varchar(255) NOT NULL
) ENGINE=InnoDB;
INSERT INTO `site` VALUES ('10');
Wat moet ik aanpassen, ik ben nog niet zo super ervaar..
Gewijzigd op 01/01/1970 01:00:00 door Vince
Maar de fout is al duidelijk. Zit op regel 20 nou ja eigenlijk in je tabel. Je insert een nieuwe waarde in de tabel linken met de id die je krijgt uit $_GET['id'] echter deze bestaat al dus loopt het fout.
Maar mij is helemaal niet duidelijk waar tabel linken voor bedoeld is. Ik heb het idee dat je database structuur niet juist is.
In de kantlijn merk ik tevens even op dat je script niet