... Abgreifen von $idartlang

Gesperrt
imu
Beiträge: 26
Registriert: Fr 24. Dez 2004, 22:06
Kontaktdaten:

... Abgreifen von $idartlang

Beitrag von imu » Di 1. Feb 2005, 09:11

Hallo, ich habe folgendes Problem:

Code: Alles auswählen

$sql3 = "SELECT metavalue
        FROM ".$cfg["tab"]["meta_tag"] ."
        WHERE
            idmetatype = 5 AND
            idartlang = ".$idartlang ;
$db3->query($sql3);
$db3->next_record();
Dieses SQL-Statement wird in meiner Testumgebung
MySQL Serverversion 4.0.23-standard-log
Installierte PHP-Version 4.3.10
Contenido: 4.4.4

richtig aufgelöst und ich erhalte die Keywörter des gerade aktiven Artikels.

In der Umgebung
MySQL Serverversion 4.0.20-standard
Installierte PHP-Version 4.3.10
Contenido: 4.4.5

scheitert es an $idartlang.
Ich habe daraufhin es mit

Code: Alles auswählen

$_POST['idartlang']
versucht (versuchen lassen, da es nicht für mich programmiert ist),
aber das gleiche Ergebnis. Kein Rückgabewert für $_POST['idartlang'], und damit scheitert die SQL-Abfrage.

Die Fehlermeldung:

Code: Alles auswählen

[31-Jan-2005 22:01:38] MySQL error 1064: 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 '' at line 5
SELECT metavalue
FROM con_meta_tag
WHERE
idmetatype = 5 AND
idartlang =
[31-Jan-2005 22:01:38] next_record called with no query pending. 
Habt Ihr einen Tip für mich?
"Unsere Lösung - Ihr Problem"

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Di 1. Feb 2005, 10:39

Ähm wo hast du denn das ganze entwickelt? Was rufst du auf?

Die wichtigsten Infos fehlen...

imu
Beiträge: 26
Registriert: Fr 24. Dez 2004, 22:06
Kontaktdaten:

Beitrag von imu » Di 1. Feb 2005, 12:43

timo hat geschrieben:Ähm wo hast du denn das ganze entwickelt? Was rufst du auf?

Die wichtigsten Infos fehlen...
also: Versionsnummern siehe oben, fett gedruckt.

ansonsten: ich habe ein Modul Volltextsuche verwendet, abgewandelt. Ziel: ein Artikel sucht alle Artikel die die gleichen Keywörter haben. Es wird eine Artikel-Linkliste angelegt.

Ich habe es bei mir getestet in einem Test-Template, in dem das Keyword-Modul (so nenne ich es jetzt mal) auch funktioniert und mir alle Artikel auflistet, die die gleichen Keywörter haben. Um zu garantieren, daß dieses Modul in sich funktioniert, sind in diesem Template keine weiteren Module integriert.

Nun habe ich es an
master111 (Contenido 4.4.5, mehr dazu steht auch oben) zum Testen gegeben und der hat eben die Schwierigkeit, daß die erste SQL-Abfrage ("Hallo, welche Meta-Keywörter habe ich eigentlich?", SQL-Syntax siehe oben) scheitert an der $idartlang.
(Fehlermeldung ebenfalls oben: der Fehler liegt bei "idartlang=" und dann kommt eben nix)
In meiner Umgebung kein Problem.

Ich weiss ehrlich gesagt nicht, welche weitere Infos du noch brauchst. Mir würde ja auch ein Tip reichen, in welcher configurationsdatei ich nachschauen sollte (resp. master111). Meine Vermutung ist, es liegt daran, daß ich die Environ-Variablen nicht so einfach abgreifen kann. Deshalb auch der Versuch mit $_POST['idartlang']. Laut master111 birngt dies aber auch kein Ergebnis.

Ich poste dir auch gern den Code, will ihn so unfertig aber nicht ins Forum stellen.

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Di 1. Feb 2005, 13:44

nun dann würd ich vorschlagen das du die $idartlang ermittelst...

in der functions.con.php gibts ne funktion dafür die das macht...

das würde dann so aussehen...

Code: Alles auswählen

$idartlang = getArtLang ($idart, $lang);
so nebenbei wie ist abgreifen zu verstehen... ?
*** make your own tools (wishlist :: thx)

imu
Beiträge: 26
Registriert: Fr 24. Dez 2004, 22:06
Kontaktdaten:

Beitrag von imu » Di 1. Feb 2005, 14:14

Danke, ich werde es gleich ausprobieren.


emergence hat geschrieben:so nebenbei wie ist abgreifen zu verstehen... ?
Abgreifen = ich schreibe mal eine Variable in den Modulcode, von der ich denke, daß sie möglicherweise in den Skripten vorher schon erzeugt wurde oder mit $_POST oder $_GET übergeben wurde. Und dann schau ich, ob sie resp. der Wert "da" ist oder nicht. Wenn man ein CMS nicht gerade selbst programmiert hat, macht man sowas schon mal, und in meiner Umgebung, 4.4.4 hatte ich damit ja auch Glück.

Gut ich werds sicherer machen mit der entsprechenden Funktion.

Gesperrt