Jeg har fået et problem med noget kode. Det skal lige siges at det ikke er mig selv der har lavet det, men jeg har prøve at lave det om til php5 fordi det var skrevet i php4.
Problemer er ikke så stort, men det er der. På selve siden er der en knap hvor man kan kopiere det produkt man har lavet, hvor den så vil lave en kopi i dben. Til et produkt hører også nogle tekst og pdf linier, der vil den kun copier den første linjie af både tekst og pdf, men den skal kopiere alle linjer også i dben.
Koden som skulle kopier produktet, tekst og pdf linjierne:
/* Copy procuct */ $sql = false; $emnerResult = mysql_query("SELECT `overskrift`, `produkt_img_id`, `nyhed`, `gid` FROM `produkter` WHERE id = '$_GET[id]'") or die(mysql_error()); $e = mysql_fetch_array($emnerResult); foreach($e as $a => $b) if(!is_numeric($a)) $sql .= (($sql) ? ", " : "")."`$a` = '".(($a == 'overskrift') ? "(KOPI) " : "")."$b'"; $insertResult = mysql_query("INSERT INTO `produkter` SET $sql") or die(mysql_error());
/* Get new product id */ $idResult = mysql_query("SELECT `id` FROM `produkter` ORDER BY `id` DESC limit 0,1") or die(mysql_error()); $i = mysql_fetch_array($idResult);
/* Copy pdf */ $sql = false; $pdfResult = mysql_query("SELECT `beskrivelse_id`, `pdf_id` FROM `produkt_pdf` WHERE `pro_id` = '".$_GET['id']."'") or die(mysql_error()); $p = mysql_fetch_array($pdfResult); if(is_array($p)) { foreach($p as $a => $b) if(!is_numeric($a)) $sql .= (($sql) ? ", " : "")."`$a` = '$b'"; $insertResult = mysql_query("INSERT INTO `produkt_pdf` SET $sql, `pro_id` = '".$i['id']."'") or die(mysql_error()); }
/* Copy tekst */ $sql = false; $textResult = mysql_query("SELECT `beskrivelse_id`, `tekst` FROM `produkt_tekst` WHERE `pro_id` = '".$_GET['id']."'") or die(mysql_error()); $t = mysql_fetch_array($textResult); if(is_array($t)) { foreach($t as $a => $b) if(!is_numeric($a)) $sql .= (($sql) ? ", " : "")."`$a` = '$b'"; $insertResult = mysql_query("INSERT INTO `produkt_tekst` SET $sql, `pro_id` = '".$i['id']."'") or die(mysql_error()); }
Okay, Det virker kun halvt. Den vil gerne kopiere produktet og den linjie af både tekst og pdf. Men den skal kopiere flere linjier. Til et produkt hører der nogle tekst og pdf linjier som er relateret til et produkt. Så når jeg trykker på kopiere produkt skal den kopiere produktet og de tilhørerne tekst og pdf linijer som er i dben.
ja det ved jeg. Men det burde jo være den kode som kopiere rækkerne. og det gør den jo ikke helt. Jeg har kigget lidt på den foreach løkker som skulle oprette de nye rækker i dben, men jeg kan ikke se om det er dem den skulle være galt med.
Det kommer fra dben. Først bliver produktet kopieret, derefter bliver alle de tekst og pdf række som passer til det kopieret produkt trukket ud fra dben og skal derefter kopieres også så vi for et produkt som er fuldstændig ens. Min problem er at den kun kopiere en række fra mit produkt og ikke eks 7 rækker som der er det dette produkt.
$i indeholder det nye id som er lavet til det kopiret produkt. Og $t og $p skulle indholde alle de rækker af både tekst og pdf rækker som har et relateret pro_id som passer til det gamle produkt alså ikke det kopieret. Og når jeg så kopirer rækkerne tager jeg $i, alså det nye produkt og sætter ind i pro_id så jeg for et fulstændigt kopieret produkt.
Jeg har prøvet at teste forskellige ting nu og det gir nogle underlige resultater. Hvis jeg eks. prøver at udskrive id'et i en echo lige efter foreach løkken ud udskriver den 78 hvor id'et hedder 74. og den udskriver det 5 gange, men id'et finde kun 4 gange. Jeg tænkte på om du(jakobdo) måske ville kigge på det hvis du fik filen og min db?
Du må da gerne prøve at sende det ja! Kan du ikke starte med at fange mig på msn? jakobdo /@\ hotmail \dot/ com
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.