Zadejte hledaný výraz...

Nahraní CSV a následné smazaní z druhé tabulky.

table
verified
rating uzivatele
4. 1. 2014 20:57:09
Zdravím zde přítomné pány a dámy.
Potřeboval bych od Vás radu jak upravit tento script níže, tak aby po nahrání CSV do tabulky zahranicni, se smazal Contentgroup z tabulky pripravujeme.
Tyto 2 tabulky mají stejné sloupce ze stejnou informací a to Contentgroup. Takže by to asi mělo mazat tak že pokud se nahraje do tabulky zahranicní do sloupce Johnny Cash, smaže to z tabulky pripravujeme celej řádek když bude ve sloupci Contentgroup Johnny Cash.
Doufám že jsem to napsal k pochopení.
Prosím upravil by mi někdo script aby to fungovalo tak jak bych chtěl?
include "settings.php";
$vlozeni=date("Y-m-d-H-i-s");
if(isset($_POST) && !Empty($_FILES) ) {
if(!copy($_FILES,"csv/".$vlozeni.".csv")){
echo "csv neulozeno
";
}
else {
echo "csv ulozeno
";
}
$data = File_Get_Contents($_FILES);
$data = explode("rn",$data);
$nahrano=0;
foreach($data as $line) {
$nahrano++;
$cells = explode("*",$line);
If($cells=='Artist' || !isset($cells) )
continue;
mysql_query("INSERT INTO `zahranicni`
SET `Title` = '".mysql_real_escape_string($cells)."',
`Artist` = '".mysql_real_escape_string($cells)."',
`Genre` = '".mysql_real_escape_string($cells)."',
`Album` = '".mysql_real_escape_string($cells)."',
`Track` = '".mysql_real_escape_string($cells)."',
`Year` = '".mysql_real_escape_string($cells)."',
`Length` = '".mysql_real_escape_string($cells)."',
`Composer` = '".mysql_real_escape_string($cells)."',
`Filename` = '".mysql_real_escape_string($cells)."',
`Contentgroup` = '".mysql_real_escape_string($cells)."',
`Albumartist` = '".mysql_real_escape_string($cells)."',
`Web` = '".mysql_real_escape_string($cells)."',
`Discnumber` = '".mysql_real_escape_string($cells)."',
`Publisher` = '".mysql_real_escape_string($cells)."',
`vlozeni` = '".mysql_real_escape_string($vlozeni)."'
") or die('Máš v Query chybu ty pitomče!!
'.MySQL_Error());
}
echo "Konec ForEach
Nahráno: $nahrano řádků
";
}
else
echo 'Není submit || soubor';
?>
4. 1. 2014 20:57:09
https://webtrh.cz/diskuse/nahrani-csv-a-nasledne-smazani-z-druhe-tabulky/#reply981921
Co jste zkoušel?
Neměl by v tom být žádný háček
MySQL :: MySQL 5.1 Reference Manual :: 13.2.2 DELETE Syntax
https://dev.mysql.com/doc/refman/5.1/en/delete.html
5. 1. 2014 13:13:00
https://webtrh.cz/diskuse/nahrani-csv-a-nasledne-smazani-z-druhe-tabulky/#reply981920
table
verified
rating uzivatele
6. 1. 2014 06:53:08
Přidal jsem toto DELETE p
FROM pripravujeme p
INNER JOIN zahranicni z
ON p.Contentgroup = z.Contentgroup
A je to plně funkční.
Děkuji
6. 1. 2014 06:53:08
https://webtrh.cz/diskuse/nahrani-csv-a-nasledne-smazani-z-druhe-tabulky/#reply981919
Přesně tak. Jen bych s radostí podotknul, že jste jeden z mála tazatelů, který po nasměrování svůj problém nejen vyřeší vlastním úsilím, ale ještě se o řešení podělí pro budoucí zájemce.
Ještě jeden tip: Vkládáte do databáze záznamy po jednom řádku. Když je shluknete do jednoho dotazu
bude vkládání rychlejší.
Podle mých zkušeností je sweet spot u vkládání cca 1000 záznamů naráz.
Pokud má CSV víc než 100 záznamů, popřemýšlel bych o tom.
6. 1. 2014 10:02:29
https://webtrh.cz/diskuse/nahrani-csv-a-nasledne-smazani-z-druhe-tabulky/#reply981918
Pro odpověď se přihlašte.
Přihlásit