Probleme beim Lesen der Datenbank

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
Apotemnophiliac
Mitglied
Beiträge: 194
Registriert: 29.01.2006 14:05
Wohnort: Graz

Probleme beim Lesen der Datenbank

Beitrag von Apotemnophiliac »

Hallo
Ich arbeite an einem MOD und bekomme nun folgende Fehlermeldung:

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Programme\xampp\htdocs\gewinnspiel\gewinnspiel.php on line 60

Hier der Quellcode: hier

Ich weiß nicht wo der Fehler liegt :( vll kann jemand von euch mir helfen

Liebe Grüße


edit: Fehler behoben
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Probiere das hier in deinem Quellcode:

Folgenden Code austauschen (zwischen den Bemerkungen:

Code: Alles auswählen

// Gewinnspiele auslesen
$sql = "SELECT id, name, bildurl, beschreibung, datum, ende
FROM " . GEWINNSPIEL_TABLE;

if( !($result = $db->sql_query($sql)) )
{
        message_die(GENERAL_ERROR, 'Error: ', '', __LINE__, __FILE__, $sql);
}

while ( $row = $db->sql_fetchrow($result) )
{
                $id = $row['id'];
                $name = $row['name'];
                $bildurl = $row['bildurl'];
                $beschreibung = $row['beschreibung'];
                $datum = $row['datum'];
                $ende = $row['ende'];

                $template->assign_block_vars('gewinnspiel', array(
                        'ROW_NUMBER' => $i + ( $start + 1 ),
                        'ID' => $id,
                        'NAME' => $name,
                        'BILDURL' => $bildurl,
                        'BESCHREIBUNG' => $beschreibung,
                        'DATUM' => $datum,
                        'ENDE' => $ende)
                );


}
$db->sql_freeresult($result);


// Header laden und Template Datei zuweisen
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
Apotemnophiliac
Mitglied
Beiträge: 194
Registriert: 29.01.2006 14:05
Wohnort: Graz

Beitrag von Apotemnophiliac »

Hallo!
Hab das Problem schon gelöst gehabt (siehe edit), doch deine Version funktioniert auch - Nun habe ich das Problem, dass er mir den Inhalt aber irgendwie nicht an die .tpl datei übergibt, obwohl ich dies doch mit assign_block_vars tue.

Der Teil in der .tpl Datei sieht so aus:

<!-- BEGIN gewinnspiel -->
<table width="600" cellpadding="3" cellspacing="1" border="0" class="forumline" align="center">
<tr>
<td class="catHead" colspan="2" height="28"><span class="cattitle">{DATUM}- {NAME}</td>
</tr>
<tr>
<td class="row1" align="center" valign="middle" rowspan="2" width="100">{BILDURL}</td>
<td class="row1" align="left" ><span class="gensmall">{BESCHREIBUNG}</span></td>
</tr>
<tr>
<td class="row1" align="left"><span class="gensmall">{ENDE}</span></td>
</tr>
</table>
<!-- END gewinnspiel -->
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

Beitrag von BB-BF-BM »

Kleiner Fehler:

Code: Alles auswählen

<!-- BEGIN gewinnspiel -->
<table width="600" cellpadding="3" cellspacing="1" border="0" class="forumline" align="center">
<tr>
<td class="catHead" colspan="2" height="28"><span class="cattitle">{gewinnspiel.DATUM}- {gewinnspiel.NAME}</td>
</tr>
<tr>
<td class="row1" align="center" valign="middle" rowspan="2" width="100">{gewinnspiel.BILDURL}</td>
<td class="row1" align="left" ><span class="gensmall">{gewinnspiel.BESCHREIBUNG}</span></td>
</tr>
<tr>
<td class="row1" align="left"><span class="gensmall">{gewinnspiel.ENDE}</span></td>
</tr>
</table>
<!-- END gewinnspiel -->
Ansonsten wird nach Variablen gesucht, die mit assign_vars() ans Temlpate übergeben wurden.
Siehe auch KB:template_syntax.
Benutzeravatar
Apotemnophiliac
Mitglied
Beiträge: 194
Registriert: 29.01.2006 14:05
Wohnort: Graz

Beitrag von Apotemnophiliac »

Hallo!
Danke - Versteh schon meinen Fehler.
Wenn ich aber nun mehrere Zeilen in der Datenbank habe, müsste er mir ja den Teil in der .tpl Datei vermehrt untereinander ausgeben oder irre ich mich da? Denn genau dies tut er nicht.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Apotemnophiliac hat geschrieben:...
Wenn ich aber nun mehrere Zeilen in der Datenbank habe, müsste er mir ja den Teil in der .tpl Datei vermehrt untereinander ausgeben oder irre ich mich da? Denn genau dies tut er nicht.
Hast Du den kompletten Code, den ich ändernderweis gepostet hatte ausgetauscht? falls nein ändere bitte noch

Code: Alles auswählen

if ( $row = $db->sql_fetchrow($result) )
{
                $id = $row['id']; 

Code: Alles auswählen

while ( $row = $db->sql_fetchrow($result) )
{
                $id = $row['id']; 
und die While-Schleife so ändernd, dass das While als Schleife weg ist und nur noch

Code: Alles auswählen

$db->sql_freeresult($result);
da steht. Dann sollte es passen.... auch mit dem Füllen der Template Variablen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
Apotemnophiliac
Mitglied
Beiträge: 194
Registriert: 29.01.2006 14:05
Wohnort: Graz

Beitrag von Apotemnophiliac »

Hallo Miriam
Super vielen Dank für deine Hilfe :) hast mich wirklich um einiges weitergebracht!

danke dir nochmals!

Liebe Grüße
Antworten

Zurück zu „Coding & Technik“