E Emil W Medlem sedan mars 2009 512 inlägg Frågan 18 juni 2009 13:00 #1 Hej alla jag försöker få i hop en funktion så att man kan flytta kommentarer om dom hamnar fel så slipper man ändra kommentarid i tabellen
Hur gör man så att han ändra kommentarid från det gamla till det nya
här är mitt försök men jag får det inte att funka
Listan som hämtar vad det finns för blogginlägg
<?php
$con = @mysql_connect("***********","*******","*******");
if(!$con)
{
die('Databasfel' . mysql_error());
}
mysql_select_db("**************", $con);
$result = mysql_query("SELECT * FROM **********");
echo "<form method=\"post\" action=\"kommentarflyttad.php\">";
echo "<select name=\"flyttad\">";
while($row = mysql_fetch_array($result))
{
echo "<option value=\"{$row['id']}\">{$row['rubrik']}</option>";
}
echo "</select>";
echo " <input type=\"submit\" value=\"Flytta\">";
echo "</form>";
?>
Här kommer koden som gör en insert
<?php
$con = @mysql_connect("**********","********","*********");
if(!$con)
{
die('Databasfel' . mysql_error());
}
mysql_select_db("***********", $con);
$sql = "INSERT INTO ************(kommentarid)
VALUES('$_POST[flyttad]')";
if(!mysql_query($sql, $con))
{
die('error' . mysql_error());
}
echo "Din kommentar är nu flyttad";
mysql_close($con);
?>
Jag har försökt och försökt
Varför kör du inte bara en SQL update , om det är samma tabell i din databas ( du kommentera ut dina SQL frågor av någon anledning(?).
Det är enklare att göra en update. Ungefär så här:
UPDATE kommentarer SET postid = $nyttid WHERE postid = $gammaltid;
kommentarer är namnet på din tabell för kommentarer, $gammaltid är id för det inlägg som kommentaren flyttas från, $nyttid är id för det inlägg som kommentaren flyttas till.
E Emil W Medlem sedan mars 2009 512 inlägg Menar du så här
<?php
$con = @mysql_connect("***********","************","*************");
if(!$con)
{
die('Databasfel' . mysql_error());
}
mysql_select_db("**********", $con);
$hamta = mysql_query("SELECT * FROM **************");
$sql = "UPDATE ******** SET kommentarid = $flyttad WHERE kommentarid = $kommentarid";
mysql_close($con);
?>
Hur ser din tabell ut med innehåll?
KommentarId är väl en PrimaryKey och unik, så du kan inte flytta den, var i tabellen säger den att den tillhör .... vad den nu tillhör, sida/grupp/kommentar Sida?
E Emil W Medlem sedan mars 2009 512 inlägg på kommentarid har jag (int)
min tabell ser ut så här
+--------+--------------+---------+------------+-----------+-----------+---------+
| id | kommentarid | namn |kommentar |datum | e_post |ip_adress |
+--------+--------------+---------+------------+-----------+-----------+---------+
jaha, men då ser det ut att kunna stämma.
E Emil W Medlem sedan mars 2009 512 inlägg jag har en tabell för bloggkommentarer och sen en tabell för blogginlägg
men jag vet inte om jag har gjort rätt med drop down menyn
för den hämtar id från en annan tabell där inte kommentarerna är
Du kan ju alltid:
1. Prova din kod direkt
2. Skriv ut din SQL fråga och kontrollera att det stämmer
$sql = "UPDATE ******** SET kommentarid = $flyttad WHERE kommentarid = $kommentarid";
echo(sql);
//mysql_close($con);
E Emil W Medlem sedan mars 2009 512 inlägg jag får detta felmeddelande
Notice: Undefined index: id in C:\wamp\www\kommentarflyttad.php on line 45
och sen blir den är UPDATE så här
UPDATE bloggkommentarer SET kommentarid = 1 WHERE kommentarid =
Du sätter aldrig variablen $kommentarid till något?