Hallo,
ich weiß nicht wie ich mit der Fehlermeldung weiterkomme, die ich beim Speichern bekomme. Auch wenn nichts verändert wurde und "Speichern" wähle erhalte ich diese Fehledermeldung:
Die Anzeige ist:
Anhang 8157
Alle SQL, die ich mir von den echo's ausgegeben habe funktionieren einwandfrei beim Ausführen mit HeidiSql.
Der Code ist leider etwas länger:
PHP-Code:public function saveValueKat($value, $dc, $katSubKatIdentifier)
{
if($katSubKatIdentifier == "kategorie")
{
$sqlDel = array('
DELETE dands_shopkategoriedeeplink, dands_shopkategorie
FROM rech_db.dands_shopkategoriedeeplink
LEFT JOIN dands_shopkategorie ON (dands_shopkategoriedeeplink.ShopKategorieId = dands_shopkategorie.Kategorie)
WHERE dands_shopkategorie.pid = "'.$dc->id.'" AND dands_shopkategoriedeeplink.pid="'.$dc->id.'";
');
$katID="Kategorie";
$fieldNames = array('Kategorie', 'ShopKategorieId', 'ShopDeepLink', 'ShopDeepLink_rtz', 'ShopDeepLink_ls24', 'ShopDeepLink_nn');
$sqlMidTableAux = " INSERT INTO rech_db.dands_shopkategorie (pid, Kategorie) VALUES ";
}
else if($katSubKatIdentifier == "subkategorie")
{
$sqlDel = array('
DELETE dands_shopkategoriedeeplink, dands_shopsubkategorie
FROM rech_db.dands_shopkategoriedeeplink
LEFT JOIN dands_shopsubkategorie ON (dands_shopkategoriedeeplink.ShopKategorieId = dands_shopsubkategorie.SubKategorie)
WHERE dands_shopsubkategorie.pid = "'.$dc->id.'" AND dands_shopkategoriedeeplink.pid="'.$dc->id.'";
');
$katID="SubKategorie";
// field names von dands_shopdeeplink
$fieldNames = array('Kategorie', 'ShopKategorieId', 'ShopDeepLink', 'ShopDeepLink_rtz', 'ShopDeepLink_ls24', 'ShopDeepLink_nn');
$sqlMidTableAux = " INSERT INTO rech_db.dands_shopsubkategorie (pid, SubKategorie) VALUES ";
}
else
{
exit("::saveValueKat $katSubKatIdentifier nicht gesetzt!");
}
$desValue = deserialize($value, TRUE);
$desValue = array_reverse($desValue);
$sqlMidTable = array();
$sql = array();
foreach ($desValue as $valueOneDim)
{
$valueOneDim = $this->reduceValueToFields($valueOneDim, $fieldNames);
if($valueOneDim['Kategorie'] != '')
{
// Wertepaar in Zwischentabelle dands_kategorie bzw. dands_subkategorie einfügen
array_push($sqlMidTable , $sqlMidTableAux.'("'.$dc->id.'","'.$valueOneDim['Kategorie'].'"); ');
// Anführungzeichen zulassen
$valueOneDim = array_map('htmlspecialchars',$valueOneDim);
$entry = implode('", "',$valueOneDim);
$fields = 'pid, ShopKategorieId,ShopDeepLink,ShopDeepLink_rtz,ShopDeepLink_ls24,ShopDeepLink_nn, tstamp';
$values = '"'.$dc->id.'", "'.$entry.'"';
array_push($sql, ' INSERT INTO dands_shopkategoriedeeplink ('.$fields.') VALUES ('.$values.', NOW());');
}
else
{
echo("<br><br><br>saveValueKat :: MÖGLICHERWEISE EIN PROBLEM ::_valueOneDim[_katID] ist leer <br><br><br>");
}
}
echo "<br><b>$katID *****************************</b><br>".implode($sqlDel)."<br><br>";
echo "<b>MID</b><br> ".implode($sqlMidTable)."<br><br>";
echo "<b>ShopKatLink</b><br>".implode($sql)."<br><br>";
echo "<br><br><br>###########################################<br><br> ";
if(sql != '')
{
$this->execSqlArr($sqlDel);
$this->execSqlArr($sqlMidTable);
$this->execSqlArr($sql);
}
else
{
echo " $SQL ist Leer";
exit("fajksdfhjkasdhfjkashjk");
}
return $value;
}
Hier wird die Funktion "saveSubCategoriesRB" aufgerufen:PHP-Code:public function saveSubCategoriesRB($value, $dc)
{
if(!$value)
{
}
else
{
$this->saveValueKat($value, $dc, 'subkategorie');
}
return $value;
}
Hat jemand einen Ansatz für mich wie ich mit dem Debugging weiter komme.PHP-Code:'ShopSubKategorien' => array
(
'label' => &$GLOBALS['TL_LANG']['dands_shop']['ShopSubKategorien'],
'inputType' => 'multiColumnWizard',
'search' => true,
'filter' => false,
'save_callback' => array(array('dands_shop', 'saveSubCategoriesRB')),
'load_callback' => array(array('dands_shop', 'loadSubCategoriesRB')),
'eval' =>
array
(
'columnFields' => array
(
'Kategorie' => array
(
'label' => &$GLOBALS['TL_LANG']['dands_shopkategorie']['Kategorie'],
'exclude' => false,
'inputType' => 'select',
'options_callback' => array('dands_shop', 'getShopSubKategorienRb'),
'eval' => array('style' => 'width:150px', 'allowHtml'=>true, 'mandatory'=>true, 'doNotSaveEmpty'=>true , 'maxlength'=>100)
),
'ShopDeepLink' => array
(
'label' => &$GLOBALS['TL_LANG']['dands_shopkategoriedeeplink']['ShopDeepLink'],
'exclude' => false,
'inputType' => 'text',
'eval' => array('style' => 'width:100px', 'allowHtml'=>true, 'mandatory'=>false, 'doNotSaveEmpty'=>true , 'maxlength'=>2000)
),
'ShopDeepLink_rtz' => array
(
'label' => &$GLOBALS['TL_LANG']['dands_shopkategoriedeeplink']['ShopDeepLink_rtz'],
'exclude' => false,
'inputType' => 'text',
'eval' => array('style' => 'width:100px', 'allowHtml'=>true, 'mandatory'=>false, 'doNotSaveEmpty'=>true , 'maxlength'=>300)
),
'ShopDeepLink_ls24' => array
(
'label' => &$GLOBALS['TL_LANG']['dands_shopkategoriedeeplink']['ShopDeepLink_ls24'],
'exclude' => false,
'inputType' => 'text',
'eval' => array('style' => 'width:100px', 'allowHtml'=>true, 'mandatory'=>false, 'doNotSaveEmpty'=>true , 'maxlength'=>300)
),
'ShopDeepLink_nn' => array
(
'label' => &$GLOBALS['TL_LANG']['dands_shopkategoriedeeplink']['ShopDeepLink_nn'],
'exclude' => false,
'inputType' => 'text',
'eval' => array('style' => 'width:100px', 'allowHtml'=>true, 'mandatory'=>false, 'doNotSaveEmpty'=>true , 'maxlength'=>300)
),
),
'mandatory' => false,
'doNotSaveEmpty'=>true,
'accesskey'=>'pid',
'columns' =>5,
)
),
Die Meldung "too few arguments to build the query string" bringt mich nicht weiter ...
Danke und Viele Grüße
Daniel

Zitieren
