SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 13.07.2010, 13:38:27
Klarissa Klarissa ist offline
Anfänger
 
Registriert seit: Jul 2010
Alter: 65
Beiträge: 11
Select Syntax fehlerhaft

Hallo, Selfphp-Gemeinde,

ich kann den Fehler nicht finden. Die Abfrage holt alle Ergebnisse in den Browser wie gewünscht, wenn die Limit Funktion nicht enthalten ist. Ich weiß einfach nicht, wie die Syntax lauten muß, und mit den mysql / php manualen verstehe ich es leider auch nicht.

Datenbankverbindung steht; anbei das generelle Such-Statement:
PHP-Code:
// grundlegendes Select Statement
    
    
$proseite =2;
    
$start $_GET['page'] * $proseite-$proseite;

    
$select 'Select distinct ID, Code, Text_gr, Title_gr, City_gr, Icon1, Icon2, Icon3, Icon4, Icon5' ;
    
$from ' from objects';
    
$where ' where 1=1';
    
$rand ' ORDER by rand()';
    
$lim =  "LIMIT($start, $proseite)"
nachfolgend das grundlegende Select Statement in der Ausführung:

PHP-Code:

$sql 
= ($select $from $where $rand);
$result mysql_query($sql);
$number mysql_num_rows($result);

echo
" Anzahl Objekte: $number <br />"// Ausgabe korrekt, ok

$start $_GET['page']* $proseite-$proseite;  // Ausgabe korrekt, alles ok
echo" START: $start <br />";

$seiten ceil($number/$proseite);

echo 
"Seitenanzahl: $seiten <br />";  // Ausgage korrekt, alles richtig


// hier nun die Query MIT der Variablen $lim, damit die Paginierung durchgeführt werden kann
 
    
$sql = ($select $from $where $rand $lim); //meint: suchen inkl. Kriterien, plus Angabe, wieviele Ergebnisse pro Seite gezeigt werden sollen

    
echo "<br />Die Abfrage lautet:  $sql<br />"//Query wird ausgeben
    
echo "Das Limit soll sein: $lim <br /><br />";//Das Limit wird angezeigt
    
$result = @mysql_query($sql);        //Die Query wird nochmals gezeigt mit 
    
echo mysql_error();                       //echo mysql_error()
    
echo"<br />";
var_dump($sql$result );
    echo
" <br /><br /> Result: $sql <br />";


 
//hier nochmal nachdenken:
 
$ende $start $proseite;
    if (
$ende $number) { $ende $number; }
    
    echo 
"<br />Seitenende nach <u>$ende</> Objekten <br />"// die Ausgabe ist richtig 
Die Fehlermeldung im Browser ist wie folgt:

HTML-Code:
Anzahl Objekte: 8
START: 0
Seitenanzahl: 4

Die Abfrage lautet: Select distinct ID, Code, Text_gr, Title_gr, City_gr, Icon1, Icon2, Icon3, Icon4, Icon5 from objects where 1=1 ORDER by rand()LIMIT(0, 2)
Das Limit soll sein: LIMIT(0, 2)

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, 2)' at line 1
string(137) "Select distinct ID, Code, Text_gr, Title_gr, City_gr, Icon1, Icon2, Icon3, Icon4, Icon5 from objects where 1=1 ORDER by rand()LIMIT(0, 2)" bool(false)

Result: Select distinct ID, Code, Text_gr, Title_gr, City_gr, Icon1, Icon2, Icon3, Icon4, Icon5 from objects where 1=1 ORDER by rand()LIMIT(0, 2)

Seitenende nach 2 Objekten 
Die Abfrage bringt alle gewünschten Ergebnisse, wenn kein Limit gesetzt wird.

Ich würde mich sehr freuen, wenn einer im Forum mir auf die Sprünge helfen könnte (ich versuche nun schon seid einer Woche, den Fehler zu beheben - wahrscheinlich wird es etwas absolut Dummes sein - ich sehe es aber leider nicht).

Vielen Dank schon jetzt einmal - ich hoffe auch, daß ich hier richtig gepostet habe
und LG
Klarissa
Mit Zitat antworten
  #2  
Alt 13.07.2010, 14:52:35
knight1 knight1 ist offline
Junior Member
 
Registriert seit: May 2003
Ort: Trier
Alter: 45
Beiträge: 310
knight1 eine Nachricht über MSN schicken knight1 eine Nachricht über Skype™ schicken
AW: Select Syntax fehlerhaft

Ändere mal dieses
Zitat:
Zitat von Klarissa Beitrag anzeigen
...
PHP-Code:
.
.
.
    
$lim =  "LIMIT($start, $proseite)"
...
gegen dieses

PHP-Code:
.
.
.
    
$lim =  "LIMIT ".$start.", ".$proseite.""
Also, LIMIT wird ohne Klammern verwendet.


Kai aka Knight1
__________________
Please visit: http://www.kaikordel.de
Mit Zitat antworten
  #3  
Alt 13.07.2010, 14:52:49
Benutzerbild von asipak4you
asipak4you asipak4you ist offline
Anfänger
 
Registriert seit: Jul 2006
Beiträge: 29
AW: Select Syntax fehlerhaft

Spendier' der Abfrage noch ein Leerzeichen.

[edit] Oh, das Leerzeichen vor LIMIT scheint gar nicht notwendig zu sein. Besser ist es trotzdem, wenn anstelle einer MySQL-Funktion wie RAND() mal ein Spaltenname ohne Backticks an dieser Stelle steht. Naja, knight1 hat dich ja schon auf die Klammern hingewiesen.
__________________
HalloPHP
Mit Zitat antworten
  #4  
Alt 13.07.2010, 15:23:31
Klarissa Klarissa ist offline
Anfänger
 
Registriert seit: Jul 2010
Alter: 65
Beiträge: 11
AW: Select Syntax fehlerhaft

Knight1,

DANKE!!!!! Das war es!
Nun komme ich endlich weiter!

Nochmals ein riesiges Dankeschön

Klarissa
Mit Zitat antworten
  #5  
Alt 13.07.2010, 15:28:09
Klarissa Klarissa ist offline
Anfänger
 
Registriert seit: Jul 2010
Alter: 65
Beiträge: 11
AW: Select Syntax fehlerhaft

asipak4you!

Danke auch für Deine Antwort, - und überhaupt,

vielen Dank an alle, die
1. geantwortet haben,
2. den Threat nicht (wegen Dummheit der Frage) irgendwohin verschoben haben!! (das kann einem passieren, ich spreche aus Erfahrung, und habe mich daraufhin 19 Tage lang nicht mehr getraut, die Frage nochmals im www zu stellen)

Deswegen allen nochmals ein großes Dankeschön!

Eure Klarissa

PS. Wie erkäre ich das Thema als erledigt?
Mit Zitat antworten
  #6  
Alt 13.07.2010, 15:51:46
cortex cortex ist offline
SELFPHP Profi
 
Registriert seit: Apr 2008
Alter: 45
Beiträge: 1.938
AW: Select Syntax fehlerhaft

hallo Klarissa,

Zitat:
Zitat von Klarissa Beitrag anzeigen
2. den Threat nicht (wegen Dummheit der Frage) irgendwohin verschoben haben!! (das kann einem passieren, ich spreche aus Erfahrung, und habe mich daraufhin 19 Tage lang nicht mehr getraut, die Frage nochmals im www zu stellen)
threads werden (bei uns) i.a. nur verschoben, um die thematische gliederung des forums zu pflegen. schade, dass du diese erfahrung gemacht hast, denn deine frage war sehr vorbildlich aufgebaut:

- das problem wurde ausführlich beschrieben
- das betreffende script wurde gezeigt
- die (vollständige) fehlermeldung wurde nicht verheimlicht
- die code-Tags wurden verwendet

das ganze in gutem deutsch; rechtschreibung, grammatik, ausdruck 1a - ich wünschte, das würde viel häufiger so laufen .-)

Zitat:
Zitat von Klarissa Beitrag anzeigen
Wie erkäre ich das Thema als erledigt?
das ist nicht notwendig - unser forum ist nicht so überlaufen und daher recht übersichtlich.

cx
Mit Zitat antworten
Antwort

Stichworte
limit, syntax-fehler


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ausgabe wird nicht angezeigt Extremefall PHP Grundlagen 9 17.12.2009 08:49:45
2 Select anfragen in eine? merowinger MySQL/MySQLi 5 25.02.2009 14:47:01
Mysql 5.1 Syntax Hamberger MySQL/MySQLi 1 28.03.2008 22:47:24
select in select verschachteln DerSchatten MySQL/MySQLi 7 19.12.2007 21:22:13
To Many Connections ProGamer11 PHP Grundlagen 0 18.06.2003 23:52:56


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:11:17 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.


© 2001-2021 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt