in einer WE 9.0.7.1 (aktuelle Nightly)
habe ich aus einer 8er Version folgendes übernommen (da funktionierte es einwandfrei):
Code: Alles auswählen
<we:var name="UserID" nameto="MID" to="global" />
<we:listview type="sql" name="statusUser" select="*" from="tblWebUser" where="id=$MID">
<we:repeat>
<we:field name="Username" />
</we:repeat>
</we:listview>
MYSQL-ERROR
Fehler: 1064
Detail: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1
Info:
Query: SELECT * FROM tblWebUser WHERE id=
MYSQL-ERROR
Fehler: 1064
Detail: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'LIMIT 0,100000000' at line 1
Info:
Query: SELECT * FROM tblWebUser WHERE id= LIMIT 0,100000000
Also trage ich testweise die mir bekannte ID hart rein und checke nochmals:
Code: Alles auswählen
<we:var name="UserID" nameto="MID" to="global" />
<we:listview type="sql" name="statusUser" select="*" from="tblWebUser" where="id=94">
<we:repeat>
<we:field name="Username" />
</we:repeat>
</we:listview>
Return value of we_listview_sql::f() must be of the type string, int returned
Also wandele ich vor der LV die Variable in einen String um:
Code: Alles auswählen
<we:var name="UserID" nameto="MID" to="global" />
<?php
$newMID = strval($GLOBALS['MID']);
?>
<we:listview type="sql" name="statusUser" select="*" from="tblWebUser" where="id=$newMID">
<we:repeat>
<we:field name="Username" />
</we:repeat>
</we:listview>
Return value of we_listview_sql::f() must be of the type string, int returned
Habe ich doch einen Fehler eingebaut, der mir partout nicht auffallen will, oder ist es vielleich doch ein Bug in der LV type"sql"?