Avatar billede flol Nybegynder
08. december 2006 - 10:38 Der er 6 kommentarer og
1 løsning

MYSQL? eller PHP fejl?

hey har gloet min kode 102103 gange i gennem, og kan ikke finde den fejl som kommer, fejlen lyder sådan:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0, 3' at line 1

og kan også ses på http://tjek.frac.dk/4-play/spil-system/index.php

min kode:

<?
include("connect.php");

$start = (isset($_GET['s'])) ? $_GET['s'] : 0;
$prside = 3;
?>
<form action="index.php" method="post">
Søg på spil: <select name="kategori" size="1">
                <option value="-------Vælge kategori-------">-------Vælge kategori-------</option>
                <option value="Sport">Sport</option>
                <option value="Adventure">Adventure</option>
                <option value="Fly">Fly</option>
                <option value="Multiplayer">Multiplayer</option>
                <option value="Strategi">Strategi</option>
                <option value="Andre">Andre</option>
</select><input type="submit" name="submitk" value="Vis kategori"> - <a href="index.php">vis alle kategorier</a><br /><br />
<input type="text" name="sog"><input type="submit" name="submit" value="Søg på spil">
</form>
<?
$sog = $_POST['sog'];

if (isset($_POST[submit])) {
$ansoeg = mysql_query ("SELECT navn FROM `spilsys` WHERE navn = '$sog'") or die (mysql_error());

$antals = mysql_num_rows($ansoeg);
if ($antals > 0){
    echo "Intet resultat";
exit;
}else{
$kategori = $_POST['kategori'];
$sog = $_POST['sog'];

$query = mysql_query("SELECT * FROM spilsys WHERE navn = '$sog'".$start.", ".$prside) or die(mysql_error());
while ($row = mysql_fetch_assoc($query)) {

$navn = $row['navn'];
$besked = $row['besked'];
$time = $row['time'];
$fil = $row['fil'];
$billede = $row['billede'];
?>
<body>
<table width="366" height="91" border="0" cellpadding="0" cellspacing="0" align="center">
    <tr>
        <td width="366" height="18" colspan="2"><a href="spil.php?id=<? echo "$_GET[id]"; ?>"><? echo "$navn"; ?></a></td>
    </tr>
    <tr>
        <td height="55" width="73"><a href="spil.php?id=<? echo "$_GET[id]"; ?>"><? echo "$billede"; ?></a></td>
        <td width="293" height="55"><? echo "$besked"; ?></td>
    </tr>
    <tr>
        <td height="18" colspan="2" width="366"><? echo "$time"; ?></td>
    </tr>
</table>
</body>
</html>
<?
}
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM spilsys WHERE navn = '$sog'"),0) or die(mysql_error());
if($start > 0) {
    echo "<a href=?s=".($start-$prside).">forrige</a>";
}

if($start < FLOOR($antal/$prside)*$prside) {
    echo " <a href=?s=".($start+$prside).">n&aelig;ste</a>";
    }
exit; }
//--------------------------------------------------------------------------------------------------

}
$submitk = $_POST['submitk'];
if (isset($submitk)) {
$kategori = $_POST['kategori'];

$query1 = mysql_query("SELECT * FROM spilsys WHERE kategori = '$kategori'".$start.", ".$prside) or die(mysql_error());
while ($row1 = mysql_fetch_assoc($query1)) {

$navn = $row1['navn'];
$besked = $row1['besked'];
$time = $row1['time'];
$fil = $row1['fil'];
$billede = $row1['billede'];
?>
<body>
<table width="366" height="91" border="0" cellpadding="0" cellspacing="0" align="center">
    <tr>
        <td width="366" height="18" colspan="2"><a href="spil.php?id=<? echo "$_GET[id]"; ?>"><? echo "$navn"; ?></a></td>
    </tr>
    <tr>
        <td height="55" width="73"><a href="spil.php?id=<? echo "$_GET[id]"; ?>"><? echo "$billede"; ?></a></td>
        <td width="293" height="55"><? echo "$besked"; ?></td>
    </tr>
    <tr>
        <td height="18" colspan="2" width="366"><? echo "$time"; ?></td>
    </tr>
</table>
</body>
</html>
<?
}
$antal1 = mysql_result(mysql_query("SELECT COUNT(*) FROM spilsys WHERE kategori = '$kategori'"),0) or die(mysql_error());
if($start > 0) {
    echo "<a href=?s=".($start-$prside).">forrige</a>";
}

if($start < FLOOR($antal1/$prside)*$prside) {
    echo " <a href=?s=".($start+$prside).">n&aelig;ste</a>";
}
}else{

//----------------------------------------------------------------------------------------------

$query2 = mysql_query("SELECT * FROM spilsys".$start.", ".$prside) or die(mysql_error());
while ($row2 = mysql_fetch_assoc($query2)) {

$navn = $row2['navn'];
$besked = $row2['besked'];
$time = $row2['time'];
$fil = $row2['fil'];
$billede = $row2['billede'];
?>
<body>
<table width="366" height="91" border="0" cellpadding="0" cellspacing="0" align="center">
    <tr>
        <td width="366" height="18" colspan="2"><a href="spil.php?id=<? echo "$_GET[id]"; ?>"><? echo "$navn"; ?></a></td>
    </tr>
    <tr>
        <td height="55" width="73"><a href="spil.php?id=<? echo "$_GET[id]"; ?>"><? echo "$billede"; ?></a></td>
        <td width="293" height="55"><? echo "$besked"; ?></td>
    </tr>
    <tr>
        <td height="18" colspan="2" width="366"><? echo "$time"; ?></td>
    </tr>
</table>
</body>
</html>
<?
}
$antal2 = mysql_result(mysql_query("SELECT COUNT(*) FROM spilsys"),0) or die(mysql_error());
if($start > 0) {
    echo "<a href=?s=".($start-$prside).">forrige</a>";
}

if($start < FLOOR($antal2/$prside)*$prside) {
    echo " <a href=?s=".($start+$prside).">n&aelig;ste</a>";
} } ?>


og min SQL fil er sådan:

CREATE TABLE `spilsys` (
`id` INT NOT NULL AUTO_INCREMENT ,
`navn` VARCHAR( 100 ) NOT NULL ,
`fil` VARCHAR( 30 ) NOT NULL ,
`besked` TEXT NOT NULL ,
`billede` VARCHAR( 30 ) NOT NULL ,
`kategori` VARCHAR( 30 ) NOT NULL ,
`time` TIMESTAMP NOT NULL ,
PRIMARY KEY ( `id` )
);

kan i hjælpe mig ? :/
Avatar billede olebole Juniormester
08. december 2006 - 10:41 #1
<ole>

Er der ikke noget vrøvl i denne linje:
    $query = mysql_query("SELECT * FROM spilsys WHERE navn = '$sog'".$start.", ".$prside) or die(mysql_error());

Hører:
    $start.", ".$prside

- mon ikke til noget 'LIMIT' eller noget?  =)

/mvh
</bole>
Avatar billede olebole Juniormester
08. december 2006 - 10:42 #2
Måske:
    $query = mysql_query("SELECT * FROM spilsys WHERE navn = '$sog' LIMIT ".$start.", ".$prside) or die(mysql_error());
Avatar billede flol Nybegynder
08. december 2006 - 10:43 #3
prøver lige :)
Avatar billede flol Nybegynder
08. december 2006 - 10:47 #4
uha tak :D
nu virker det..
nu er det bare de andre fjel jeg skal ha kigget på :)

tak for hjælpen , skriv et svar
Avatar billede olebole Juniormester
08. december 2006 - 12:52 #5
Selvtak. Jeg kan se, du har samme fejl i '$query2', så den skal du nok også lige rette  ;o)
Avatar billede flol Nybegynder
08. december 2006 - 14:27 #6
ja ja har både i $query $query1 og $query2
:) men er rettet
Avatar billede olebole Juniormester
08. december 2006 - 14:32 #7
Tak for points  ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester