Mailinglisten-Archive |
Hallo, zusammen!
Zunächst: als neues Mitglied dieser Liste (und auch der
PHP-Entwicklergemeinde) verzeiht bitte, falls mein Problem erst vor
kurzem erörtert wurde. Mir fehlt i.M. leider, leider die Zeit für eine
eingehende Archiv-Recherche. Ein konkreter Hinweis aufs Archiv würde mir
aber auch schon helfen!
Zum Problem:
Eine Access 2000-DB unter W2K soll via ODBC (System-DNS per "Microsoft
Access-Treiber (*.mdb)") HTML-Textbausteine liefern, aus denen PHP eine
komplette Seite zusammenbaut. Soweit so gut. Connect und Zugriff
funktionieren, Seite wird aufgebaut, (fast) alles wunderbar ...
Wäre da nur nicht die störende Tatsache, dass von den HTML-Bausteinen,
die in einem Access-Datenfeld vom Typ "Memo" abgelegt sind, niemals die
maximal möglichen 64.000 Zeichen (oder waren es 64 KB? Egal!)
zurückgeliefert werden, sondern anscheinend völlig willkürlich nur
zwischen 4 KB und vielleicht 32 KB des Inhalts. Dabei handelt es sich
paradoxerweise aber jeweils um *exakt* die gleiche Datenmenge pro
betroffenem Baustein, weshalb ich zunächst an ein bestimmtes Byte im
Baustein als Auslöser dachte (im Sinn eines wie auch immer gearteten
Steuerzeichens). Das ist allerdings nicht der Fall.
Der Query ist wohl korrekt, die Übergabe anscheinend auch, weil ja das
Erwartetete geliefert wird (siehe Code-Schnipsel ganz unten). Wo aber
bleiben die unterschlagenen Bytes des Feldinhalts?
Gibt es irgendwelche Einstellungen, die ich näher betrachten sollte --
ob nun auf PHP- oder auf ODBC-Treiberseite? Beides ist derzeit völlig
Default eingestellt.
Achja, nochwas: das Problem tritt sowohl dann auf, wenn IIS, PHP.EXE und
die ODBC-Quelle auf einem W2K-Server wohnen, als auch dann, wenn ich den
ganzen Klumpatsch lokal auf einem W2K-Prof. Arbeitsplatz zum Rennen
bringe. Es scheidet also wohl auch ein LAN-bedingter Timeout aus, oder?
Jeder Hinweis wird äußerst dankbar entgegen genommen!
Gruß,
Rodya
Code-Schnipsel:
~~~~~~~~~~~~~~~~
function do_sql($q) { //Query ausführen
GLOBAL $conn;
if (! $r=odbc_exec($conn,$q ) )
die("Konnte Query nicht
ausführen!<br>$q");
return $r;
}
function get_col($r,$c) { //Spalte selektieren
$r=odbc_result($r,$c);
return $r;
}
$query="SELECT tBaust.html, tCont.titel
FROM tCont INNER JOIN (tBaust INNER JOIN
tContBaust ON tBaust.baustid =
tContBaust.baustid) ON tCont.contid =
tContBaust.contid
WHERE tCont.contid=$cpid"; //cpid = ContentPageID
$result=do_sql($query);
while ($l=odbc_fetch_row($result)) {
$komp=get_col($result,"html");
echo $komp; //Hier erfolgt Ausgabe
}
--
________________________________________________________
Rodya Jörn Koester B2A MEDIA GRAFIC DESIGN
mailto:koester_(at)_b2a.de Kassel,Deutschland,Europa,Erde
________________________________________________________
php::bar PHP Wiki - Listenarchive