Einfügen in MySQL Tabelle

Taucher_2006

Mitglied
Hi@all

ich habe da ein kleines Problem bei der Portierung von einem Plugin für Coppermine aus der Version 1.4x->1.5x.
Es soll etwas in die Tabelle Config eingefügt werden. soweit so gut.

PHP:
$query= "INSERT INTO ".$CONFIG['TABLE_CONFIG']." (name, value) VALUES (\"rank1\", \"Newbie\"), (\"rank2\", \"Member\"), (\"rank_image1\", \"<img src=\"\"plugins/CopperRank/images/rank1.jpg\"\" />\"), (\"rank_image2\", \"<img src=\"\"plugins/CopperRank/images/rank2.jpg\"\" />\"),(\"rank_image3\", \"<img src=\"\"plugins/CopperRank/images/rank3.jpg\"\" />\"), (\"rank_image4\", \"<img src=\"\"plugins/CopperRank/images/rank4.jpg\"\" />\"), (\"rank_image5\", \"<img src=\"\"plugins/CopperRank/images/rank5.jpg\"\" />\");";
cpg_db_query($query);
Es kommt eine Fehlermeldung,wo ich nicht weiß wo sie herkommt.
PHP:
mySQL error: Duplicate entry 'rank1' for key 'PRIMARY'
Kann mir wer helfen?

VG
CMFA
 
Das heisst, dass du einen Primary-Schlüssel (der ist immer UNIQUE) auf daas Feld rank1 hast. Und dort gibts bereits ein Eintrag mit rank_image1 oder rank_image2 etc.
 
Hi,

sorry hatte ich in der Tabelle Config übersehen. HAbe sie rausgelöscht. Jedoch kommt weiterhin der Fehler beim drücken des Button "Submit".

PHP:
// Configure function
function rank_configure() {
global $CONFIG, $lang_plugin_CopperRank_how, $lang_plugin_CopperRank , $lang_plugin_CopperRank_table;
  $superCage = Inspekt::makeSuperCage();
  $request_uri = $superCage->server->getEscaped('REQUEST_URI');

$query= "INSERT INTO ".$CONFIG['TABLE_CONFIG']." (name, value) VALUES (\"rank1\", \"Newbie\"), (\"rank2\", \"Member\"), (\"rank_image1\", \"<img src=\"\"plugins/CopperRank/images/rank1.jpg\"\" />\"), (\"rank_image2\", \"<img src=\"\"plugins/CopperRank/images/rank2.jpg\"\" />\"),(\"rank_image3\", \"<img src=\"\"plugins/CopperRank/images/rank3.jpg\"\" />\"), (\"rank_image4\", \"<img src=\"\"plugins/CopperRank/images/rank4.jpg\"\" />\"), (\"rank_image5\", \"<img src=\"\"plugins/CopperRank/images/rank5.jpg\"\" />\");";
cpg_db_query($query);
$query= "INSERT INTO ".$CONFIG['TABLE_CONFIG']." (name, value) VALUES (\"rank3\", \"Extreme Member\"), (\"rank4\", \"Power Member\");";
cpg_db_query($query);
$query= "INSERT INTO ".$CONFIG['TABLE_CONFIG']." (name, value) VALUES (\"rank_value3\", \"35\"), (\"rank_value4\", \"45\");";
cpg_db_query($query);
$query= "INSERT INTO ".$CONFIG['TABLE_CONFIG']." (name, value) VALUES (\"rank_value1\", \"10\"), (\"rank_value2\", \"25\");";
cpg_db_query($query);
$query= "INSERT INTO ".$CONFIG['TABLE_CONFIG']." (name, value) VALUES (\"rank5\", \"Addict\"), (\"rank_value5\", \"50\");";
cpg_db_query($query);

echo <<< EOT
{$lang_plugin_CopperRank_table['start']} </br>
<form name="submit" id="submit" action="$request_uri" method="post">
<input id="submit" name="submit" type="submit" value="submit" />
</form>
EOT;
}

VG
CMFA
 
Wenns der gleiche Fehler ist, dann heist er ganeu, dass doppelte Schlüssel vorhanden währen wenn der EIntrag eingetragen würde und darum wird er nicht eingetragen.
 
also ich hab es gerade probiert und funktioniert 1A.
Warum du es mit vier inserts anstatt einem machst versteh ich zwar nicht und du hast bei <img src="".."" 2 " verwendet aber ja.

PHP:
$query= 'INSERT INTO tester (name, value) 
VALUES 
("rank1", "Newbie"), 
("rank2", "Member"), 
("rank3", "Extreme Member"),
("rank4", "Power Member"),
("rank5", "Addict"),
("rank_value1", "10"),
("rank_value2", "25"),
("rank_value3", "35"),
("rank_value4", "45"),
("rank_value5", "50"),
("rank_image1", "<img src=\"plugins/CopperRank/images/rank1.jpg\" />"), 
("rank_image2", "<img src=\"plugins/CopperRank/images/rank2.jpg\" />"),
("rank_image3", "<img src=\"plugins/CopperRank/images/rank3.jpg\" />"), 
("rank_image4", "<img src=\"plugins/CopperRank/images/rank4.jpg\" />"), 
("rank_image5", "<img src=\"plugins/CopperRank/images/rank5.jpg\" />")';
 
Zurück