Hallo Forumer,
nachdem derzeit PHP nicht in we:linklist eingesetzt werden kann, möchte ich mittels we:block und we:link eine Downloadliste aufsetzen.
Mit Textfeldern klappt auch alles reibungslos, nur auf die Werte in we:link kann ich nicht zugreifen.
Wenn ich die we:block auslese bekomme ich anstelle des Wertes des we:link-Tag folgende Ausgabe:
a:27:{s:2:"id";s:3:"310";s:4:"href";s:1:"#";s:7:"attribs";s ...... undsoweiterundsofort.
Wäre klasse wenn sich dass mal jemand ansehen könnte. Ich habe es schon zigmal gemacht und auch schon komplett neu eingegeben.
Ich vermute, dass ich auf die falschen Feldnamen zugreife, aber wie bekomme ich raus, wie die Felder in we:link heissen?
Besten Dank, Peter
Mein Beispielcode:
Eingabe (we:IfEditmode)
<we:block name="download">
<tr>
<td class="tabCell">
<we:link name="Attribute"/>
</td>
Ausgabe: (we:ifNotEditmode)
$block = unserialize($we_doc->getElement("download"));
for($i=0;$i {$nr = $block[$i];
$feld1= $we_doc->getElement("Attributeblk_download_".$nr);
echo "$feld1";
Werte aus we:link mit PHP auslesen
Hallo,
links und hrefs werden nicht im plain-Text in den Feldern gespeichert (da man zwischen internen Links und externen Links unterscheiden muß) und lassen sich daher nicht so einfach auslesen wie Text Felder. Hier ein Beispiel:
links und hrefs werden nicht im plain-Text in den Feldern gespeichert (da man zwischen internen Links und externen Links unterscheiden muß) und lassen sich daher nicht so einfach auslesen wie Text Felder. Hier ein Beispiel:
Code: Alles auswählen
$feld1= $we_doc->getElement("Attributeblk_download_".$nr);
$linkArr = unserialize($feld1);
if(is_array($linkArr)){
if($linkArr["type"]=="int"){ // interner Link
if($linkArr["id"]){
$path = f("SELECT PATH FROM tblFile WHERE ID='".$linkArr["id"]."'","Path",new DB_WE());
}else{
$path = "#";
}
}else{ // externer Link
$path = $linkArr["href"];
}
}
print $path;
Hallo Holger,
besten Dank für das Beispiel.
Habe es mit Copy & Paste eingefügt. Leider klappt es nicht ganz; soll heissen es kommt kein Ergebnis.
Kann es sein dass der SELECT-Befehl auf die Tabelle nicht ganz richtig ist?
Denn wenn ich mir die Blockgroesse ausgeben lasse
$size = sizeof($block);
echo"Blockgroesse: $size";
bekomme ich ebenso ein Ergebnis, als wenn ich mir den Inhalt des Feldes "feld1"
$feld1= $we_doc->getElement("Attributeblk_download_".$nr);
echo"Feld1: $feld1";
anzeigen lasse.
Nur bei
$path = f("SELECT PATH FROM tblFile WHERE ID='".$linkArr["id"]."'","Path",new DB_WE());
echo"Path: $path";
bekomme ich nix.
Woran kann das liegen?
Wenn ich mit Hardcopies und Zugriff auf unser e Installation helfen kann, bitte kurze Info.
Das ganze brennt mir nämlich etwas unter den Nägeln.
Besten Dank, Peter
besten Dank für das Beispiel.
Habe es mit Copy & Paste eingefügt. Leider klappt es nicht ganz; soll heissen es kommt kein Ergebnis.
Kann es sein dass der SELECT-Befehl auf die Tabelle nicht ganz richtig ist?
Denn wenn ich mir die Blockgroesse ausgeben lasse
$size = sizeof($block);
echo"Blockgroesse: $size";
bekomme ich ebenso ein Ergebnis, als wenn ich mir den Inhalt des Feldes "feld1"
$feld1= $we_doc->getElement("Attributeblk_download_".$nr);
echo"Feld1: $feld1";
anzeigen lasse.
Nur bei
$path = f("SELECT PATH FROM tblFile WHERE ID='".$linkArr["id"]."'","Path",new DB_WE());
echo"Path: $path";
bekomme ich nix.
Woran kann das liegen?
Wenn ich mit Hardcopies und Zugriff auf unser e Installation helfen kann, bitte kurze Info.
Das ganze brennt mir nämlich etwas unter den Nägeln.
Besten Dank, Peter
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste