SQL Syntax Error

flyingbull1979
Hallo,

bekoome immer folgende Fehlermeldung:

"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 'ON linkdatenbank_categorie.catID = linkdatenbank.kategorie AND l' at line 22"

Versuche schon seit Tagen, dieses Problem zu lösen. Habe es bisher aber leider noch net Geschafft.

Hat jemand nen Rat?



Der FlugBulle
daHooligan
kannst du bitte mal die ganze Syntax posten?
du hast auf jeden fall an einer stelle nen fehler, aber azu sollte man die ganze syntax sehen um das einordnen zu können
ThiefMaster
Und du solltest entweder komplett deutsche oder komplett englische Tabellennamen nehmen. "categorie" ist unschön Augenzwinkern
flyingbull1979
Das ganze Syntax hier :


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:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
<?php
if (!empty($_GET['letter']))
{
    if ($_GET['letter'] == 1)
        $sql_addition "AND ASCII(LTRIM(linkdatenbank.name)) >= 48 AND ASCII(LTRIM(linkdatenbank.name)) <= 57";
    else
        $sql_addition "AND ASCII(LTRIM(linkdatenbank.name)) = ASCII('".$_GET['letter']."')";
}
else
    $sql_addition "";
    
if (!empty($_GET['spalte']))
        $sql_addition .= " ORDER BY linkdatenbank.".sqlSafeString($_GET['spalte'])." ".sqlSafeString($_GET['order'])."";
    else
        $sql_addition .= " ORDER BY name ASC";

//Links auf Seiten verteilen
$links_per_page 20;
$page = (empty($_GET['page']) || $_GET['page'] <= 0)? $_GET['page'];
$start = ($page -1) * $links_per_page;
$number mysql_num_rows(mysql_query("SELECT id FROM linkdatenbank WHERE linkdatenbank.freigeschaltet = 0 AND linkdatenbank.release = 1   ".$sql_addition." "));

$sql =  "SELECT"

        linkdatenbank_categorie.categoriename,
        linkdatenbank_categorie.catID,
        linkdatenbank.id,
        linkdatenbank.typ,
        linkdatenbank.name,
        linkdatenbank.datum,
        linkdatenbank.format,
        linkdatenbank.hits,
        linkdatenbank.sprache,
        linkdatenbank.kategorie,
        linkdatenbank.freigeschaltet,
        linkdatenbank.link,
        linkdatenbank_subcategorie.catid,
        linkdatenbank_subcategorie.id AS subid,
        linkdatenbank_subcategorie.name AS subcatname,
        linkdatenbank_subcategorie.icon,
        DATE_FORMAT(linkdatenbank.eintragungsdatum'%d.%m.%Y') AS eintragungsdatum
    FROM 
        linkdatenbank,
     JOIN
           linkdatenbank_categorie,
        linkdatenbank_subcategorie,
    ON
         linkdatenbank_categorie.catID linkdatenbank.kategorie AND
        linkdatenbank.unterkategorie linkdatenbank_subcategorie.id
    WHERE
        linkdatenbank.freigeschaltet AND
        linkdatenbank.release 1    
        ".$sql_addition." 
    LIMIT ".$start."".$links_per_page."";
$result = mysql_query($sql)or die (mysql_error());
?>

<h2>Alle Top Links:</h2>
<div style="width:100%;" class="strich">&nbsp;</div>
<br />

<table width="100%">
 <tr>
  <td style="text-align:center;">
   <b><a href="index.php?site=link&action=allreleases&letter=1">0-9 </a></b>
<?php
 for ($i = 'A'; $i != 'AA'; $i++){
    echo '<b><a href="index.php?site=link&action=allreleases&letter='.$i.'">&nbsp;'.$i.' </a></b>';
 }
?>
  </td>
 </tr>
</table>

<p>
<table class="suche" cellspacing="0" cellpadding="0">
 <tr>
  <th><small>#</small></th>
  <th>&nbsp;</th>
  <th>&nbsp;</th>
  <th><a href="index.php?site=link&action=allreleases&letter=<?=$_GET['letter']?>&spalte=name&order=<?=(($_GET['spalte'] == 'name' && empty($_GET['order']))? 'DESC'''?>"  style="color:#FFF;">Linkname
<?php
    if ($_GET['spalte'] == 'name' && empty($_GET['order']))
        echo ' <img src="gfx/icons/s_asc.png" title="aufsteigend" alt="aufsteigend">';
    else if ($_GET['spalte'] == 'name' && $_GET['order'] == 'DESC')
        echo ' <img src="gfx/icons/s_desc.png" title="absteigend" alt="absteigend">';
?></a></th>

  <th><a href="index.php?site=link&action=allreleases&letter=<?=$_GET['letter']?>&spalte=kategorie&order=<?=(($_GET['spalte'] == 'kategorie' && empty($_GET['order']))? 'DESC'''?>"  style="color:#FFF;">Kategorie
<?php
    if ($_GET['spalte'] == 'kategorie' && empty($_GET['order']))
        echo ' <img src="gfx/icons/s_asc.png" title="aufsteigend" alt="aufsteigend">';
    else if ($_GET['spalte'] == 'kategorie' && $_GET['order'] == 'DESC')
        echo ' <img src="gfx/icons/s_desc.png" title="absteigend" alt="absteigend">';
?></a></th>

  <th><a href="index.php?site=link&action=allreleases&letter=<?=$_GET['letter']?>&spalte=sprache&order=<?=(($_GET['spalte'] == 'sprache' && empty($_GET['order']))? 'DESC'''?>"  style="color:#FFF;">Sprache
<?php
    if ($_GET['spalte'] == 'sprache' && empty($_GET['order']))
        echo ' <img src="gfx/icons/s_asc.png" title="aufsteigend" alt="aufsteigend">';
    else if ($_GET['spalte'] == 'sprache' && $_GET['order'] == 'DESC')
        echo ' <img src="gfx/icons/s_desc.png" title="absteigend" alt="absteigend">';
?></a></th>
  
  <th><a href="index.php?site=misc&site=link&action=allreleases&letter=<?=$_GET['letter']?>&spalte=format&order=<?=(($_GET['spalte'] == 'format' && empty($_GET['order']))? 'DESC'''?>"  style="color:#FFF;">Format
<?php
    if ($_GET['spalte'] == 'format' && empty($_GET['order']))
        echo ' <img src="gfx/icons/s_asc.png" title="aufsteigend" alt="aufsteigend">';
    else if ($_GET['spalte'] == 'format' && $_GET['order'] == 'DESC')
        echo ' <img src="gfx/icons/s_desc.png" title="absteigend" alt="absteigend">';
?></a></th>
  
  <th><a href="index.php?site=link&action=allreleases&letter=<?=$_GET['letter']?>&spalte=hits&order=<?=(($_GET['spalte'] == 'hits' && empty($_GET['order']))? 'DESC'''?>"  style="color:#FFF;">Hits
<?php
    if ($_GET['spalte'] == 'hits' && empty($_GET['order']))
        echo ' <img src="gfx/icons/s_asc.png" title="aufsteigend" alt="aufsteigend">';
    else if ($_GET['spalte'] == 'hits' && $_GET['order'] == 'DESC')
        echo ' <img src="gfx/icons/s_desc.png" title="absteigend" alt="absteigend">';
?></a></th>
  
  <th><a href="index.php?site=link&action=allreleases&letter=<?=$_GET['letter']?>&spalte=datum&order=<?=(($_GET['spalte'] == 'datum' && empty($_GET['order']))? 'DESC'''?>"  style="color:#FFF;">Datum
<?php
    if ($_GET['spalte'] == 'datum' && empty($_GET['order']))
        echo ' <img src="gfx/icons/s_asc.png" title="aufsteigend" alt="aufsteigend">';
    else if ($_GET['spalte'] == 'datum' && $_GET['order'] == 'DESC')
        echo ' <img src="gfx/icons/s_desc.png" title="absteigend" alt="absteigend">';
?></a></th>

 </tr>
<?php
    if (mysql_num_rows($result)) 
    {
        while($links mysql_fetch_array($result)) 
        {
?>
 <tr>
  <td valign="middle" align="center"><img src="gfx/button_01.gif" height="6" width="3"></td>
  <td style="width:15px"><small><img src="gfx/icons/<?=(($links['typ'] == 1)? 'emule''applejuice')?>.gif" alt="<?=(($links['typ'] == 1)? 'emule.gif''applejuice')?>"></small></td>
  <td style="width:15px"><small><img src="<?=$_icon[$links['icon']]['url']?>" /></small></td>
  <td width="100%" style="text-align:left";><a href="index.php?site=showlinks&amp;id=<?=$links['id']?>"><?=$links['name']?></a></td>
  <td><small><a href="index.php?site=showlinks&catid=<?=$links['catid']?>&cateid=<?=$links['subid']?>"><?=$links['categoriename']?>/<?=$links['subcatname']?></a></small></td>
  <td><small><?=flagImage($links['sprache'])?></small></td>
  <td><small><?=$links['format']?></small></td>
  <td><small><?=$links['hits']?></small></td>
  <td><small><?=format_date($links['datum'], 0)?></small></td>
 </tr>
<?php
        }
    }
    else
        echo '<tr><td colspan="7">Keineigenen Releases gepostet</td></th>';
?>
</table>

<div style="text-align:center; padding:3px;"><b>
<?=pages($page$links_per_page$number'index.php?site=link&action=allreleases&letter='.$_GET['letter'].'&spalte='.$_GET['spalte'].'&order='.$_GET['order'])?></b>
</div>



Und ich finde da keinen Fehler!

THX für eure Hilfe!


Der FlugBulle
daHooligan
versuchs mal, indem du die werte in " ` " setzt (ohne die "") und pass auf, dass es das richtige Anführungszeichen ist...(rechts neben dem "\" mit Shift auf der deutschen Tastatur).
also praktisch: ... WHERE id=`2` soweit ich mich erinnern kann
flyingbull1979
Selbst nach dem umstellen funzt es net.

Hab doch nur den Server gewechselt. Davor ging es doch auch. Das verstehe ich nu echt überhaupt net !

Weiss den keiner einen Rat ?



Der FlugBulle
**sLy**
Vielleich ne andere MySQL Version die auf dem Server ist?

Gruß, sLy