Hallo,
habe ein bisschen gegooglet, da ich ein Problem mit einem Script habe. Leider haben mit die Ergebnisse der Suche nicht geholfen. Da ich aber gesehen habe, dass hier vile Leute Ahnung haben, dachte ich, ich registriere mich mal und stelle meine Frage hier.
Ich habe mir ein Script runtergeladen, dass einene Datenbank verwendet. Dazu gibt es eine administrative Oberfläche, die per REPLACE die Felder überschreiben soll, die ich per FORM ändern kann. Leider verwende ich PHP 5.2 und MySQL 5.1. Anscheinend wurde das Script für frühere Versionen geschrieben.
Nun das eigentliche Problem ist, dass die Datenbankfelder nicht überschrieben werden. Ich habe leider zu wenig Erfahrung mit MySQL und weiß nicht, wie ich den Befehl richtig definiere. Hier also der Code-Teil, den ich verwende (den Rest habe ich der Übersicht halber mal weggelasen):
Habe mittlerweile die REPLACE-Funktion durch UPDATE ersetzt, da ich irgendwo gelesen habe, dass man es da lieber verwenden soll.
Hoffe, dass mir jemand helfen kann und bedanke mich schonmal im Voraus.
Gruß
Sascha
habe ein bisschen gegooglet, da ich ein Problem mit einem Script habe. Leider haben mit die Ergebnisse der Suche nicht geholfen. Da ich aber gesehen habe, dass hier vile Leute Ahnung haben, dachte ich, ich registriere mich mal und stelle meine Frage hier.
Ich habe mir ein Script runtergeladen, dass einene Datenbank verwendet. Dazu gibt es eine administrative Oberfläche, die per REPLACE die Felder überschreiben soll, die ich per FORM ändern kann. Leider verwende ich PHP 5.2 und MySQL 5.1. Anscheinend wurde das Script für frühere Versionen geschrieben.
Nun das eigentliche Problem ist, dass die Datenbankfelder nicht überschrieben werden. Ich habe leider zu wenig Erfahrung mit MySQL und weiß nicht, wie ich den Befehl richtig definiere. Hier also der Code-Teil, den ich verwende (den Rest habe ich der Übersicht halber mal weggelasen):
PHP:
<?php
if (EMAIL_USE_HTML == 'true'){
$languages = tep_get_languages();
if ($REQUEST_METHOD=="POST")
{
for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
$languages_id=$languages[$i]['id'];
$aboutus[$languages_id] = str_replace("<-", "<-", $aboutus[$languages_id]);
$aboutus[$languages_id] = str_replace("->", "->", $aboutus[$languages_id]);
$aboutus[$languages_id] = preg_replace('/\r\n|\r|\n/', ' ', $aboutus[$languages_id]);
mysql_query("REPLACE INTO eorder_text VALUES (2, $languages_id, '$aboutus[$languages_id]')")
or die(mysql_error());
}
}
} else {
$languages = tep_get_languages();
if ($REQUEST_METHOD=="POST")
{
for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
$languages_id=$languages[$i]['id'];
mysql_query("REPLACE INTO eorder_text VALUES (1, $languages_id, '$aboutus[$languages_id]')")
or die(mysql_error());
}
}
}
?>
<form name="aboutusform" method="Post" action="">
<?php
for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
$languages_id=$languages[$i]['id'];
if (EMAIL_USE_HTML == 'true') {
$sql=mysql_query("SELECT * FROM eorder_text where eorder_text_id = 2 AND language_id = '$languages_id'")
or die(mysql_error());
}else{
$sql=mysql_query("SELECT * FROM eorder_text where eorder_text_id = 1 AND language_id = '$languages_id'")
or die(mysql_error());
}
$row=mysql_fetch_array($sql);
$text = $row["eorder_text_one"];
?>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="main" valign="top"><?php echo tep_image(DIR_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']); ?> </td>
<td class="main">
<?php if (EMAIL_USE_HTML == 'true'){ echo tep_draw_textarea_field('aboutus['.$languages[$i][id].']', 'soft', '200', '50', $text); }
else{ ?><textarea name="aboutus[<?php echo $languages[$i][id]; ?>]" cols="75" rows="15"><?php echo $text; ?></textarea><?}?>
</td>
Habe mittlerweile die REPLACE-Funktion durch UPDATE ersetzt, da ich irgendwo gelesen habe, dass man es da lieber verwenden soll.
Hoffe, dass mir jemand helfen kann und bedanke mich schonmal im Voraus.
Gruß
Sascha