Ist es Möglich einem Artikel ein Attribut zuzuordnen, ohne dieses immer auszufüllen ?
beispielsweise lege ich ein Attribut an mit dem Author-Name und weisse diesem dann die entsprechenden Artikel zu. Nun muss ich aber bei jedem Artikel die einzelnen Attribute mit einer Value belegen, was auf die Dauer sehr Nerfig ist, vorallem wenn man dann im Endeffekt irgendwann mal X-Tausend Artikel hat, die es zu pflegen gibt usw…
Ich hab als Ziel quasi, dass der Attribute-Title auch dann ausgelesen wird, wenn keine Value vorhanden ist.
Hat sich erledigt. habe das ganze nun via php und AJAX-Anfrage zur DB gelöst
Hier mal der Code, für alle die es Interessiert und vor selbigen Problem stehen
{dein_template}.tpl
/* DIV für den späteren content des attributes */
<div id="illustrator_name">
</div>
[{ oxscript include="your/Script/file.js" }]
/* Javascript File */
var datastring = $("input[name='aid']").val() // Value für datenbankabfrage
// ohne diese gehts NICHT
$.ajax({
type: "POST",
url: "path_to_php_file.php",
data: 'datastring='+datastring,
dataType: "html", //expect html to be returned
}).done(function(msg){
$('#illustrator_name').html(msg);
});
Zu guter letzt dann noch die Auswertung in path_to_php_file.php.
header('Content-Type: text/html; charset=ISO-8859-15');
$dbHost = 'localhost'; // database host name (default: localhost)
$dbName = ''; // database name
$dbUser = ''; // database user name
$dbPwd = ''; // database password
$url = $_REQUEST['datastring'];
$cnx = mysql_connect($dbHost, $dbUser, $dbPwd);
$sel = mysql_select_db($dbName);
$sqlMain = mysql_query("SELECT * FROM oxobject2attribute WHERE oxobjectid LIKE '%" . $url . "%' ");
$row=mysql_fetch_array($sqlMain);
$articleID = $row["OXOBJECTID"];
$attributeID = $row["OXATTRID"];
$sqlAttributeID = mysql_query("SELECT * FROM oxattribute WHERE oxid LIKE '%" . $attributeID . "%' ");
$row2=mysql_fetch_array($sqlAttributeID);
echo $row2["OXTITLE"];
?>
Am besten das OXID Framework im Script mit den entsprechenden MySQL Methoden verwenden, die eine SQL-Insertion verhindern. Irgendwo ist ein Beitrag hier verbuddelt, an dem ich beteiligt war… Falls ich Ihn finden sollte, adde ich hier den Link dazu.
abrufen ? oder was muss ich dann machen ? weil egal wo ich den codeschnipsel lösche, ich komme immer zum Ergebnis, dass mir nichts angezeigt wird und die Exception-log datei auch keine Fehler registriert…