magento批量清除产品和分类
在magento的开发和模板调试的时候都需要加入一些分类和产品,等到网站正式上线的时候又是很麻烦的事情,所以自己写了一个php,用于清除产品和分类
$path="/var/html" //网站的目录
//include("mysql.class.php");
if($_POST[web]){
$web=$_POST[web];
$xml=simplexml_load_file("/$path/$web/app/etc/local.xml"); //读取xml文件
$dbname=$xml->global->resources->default_setup->connection->dbname;
$password=$xml->global->resources->default_setup->connection->password;
$username=$xml->global->resources->default_setup->connection->username;
echo "dbname:$dbname"."
";
echo "password:$password"."
";
$mysqli=new mysqli("localhost","$username","$password","$dbname");
//以下是清除语句
$csql1="TRUNCATE TABLE `catalog_category_entity`";
$csql2="TRUNCATE TABLE `catalog_category_entity_datetime`";
$csql3="TRUNCATE TABLE `catalog_category_entity_decimal`";
$csql4="TRUNCATE TABLE `catalog_category_entity_int`";
$csql5="TRUNCATE TABLE `catalog_category_entity_text`";
$csql6="TRUNCATE TABLE `catalog_category_entity_varchar`";
$csql7="TRUNCATE TABLE `catalog_category_product`";
$csql8="TRUNCATE TABLE `catalog_category_product_index`";
$csql9="INSERT INTO `catalog_category_entity`(`entity_id`,`entity_type_id`,`attribute_set_id`,`parent_id`,`created_at`,`updated_at`,`path`,`POSITION`,`level`,`children_count`) VALUES (1,3,0,0,'0000-00-00 00:00:00','2009-02-20 00:25:34','1',1,0,1),(2,3,3,0,'2009-02-20 00:25:34','2009-02-20 00:25:34','1/2',1,1,0)";
$csql10="INSERT INTO `catalog_category_entity_int`(`value_id`,`entity_type_id`,`attribute_id`,`store_id`,`entity_id`,`value`) VALUES (1,3,32,0,2,1),(2,3,32,1,2,1)";
$csql11="INSERT INTO `catalog_category_entity_varchar`(`value_id`,`entity_type_id`,`attribute_id`,`store_id`,`entity_id`,`value`) VALUES (1,3,31,0,1,'Root Catalog'),(2,3,33,0,1,'root-catalog'),(3,3,31,0,2,'Default Category'),(4,3,39,0,2,'PRODUCTS'),(5,3,33,0,2,'default-category')";
$sqls="$csql1;$csql2;$csql3;$csql4;$csql5;$csql6;$csql7;$csql8;$csql9;$csql10;$csql11";
$dsql="TRUNCATE TABLE `catalog_product_bundle_option`;";
$dsql.=" TRUNCATE TABLE `catalog_product_bundle_option_value`;";
$dsql.=" TRUNCATE TABLE `catalog_product_bundle_selection`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_datetime`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_decimal`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_gallery`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_int`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_media_gallery`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_media_gallery_value`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_text`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_tier_price`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity_varchar`;";
$dsql.=" TRUNCATE TABLE `catalog_product_link`;";
$dsql.=" TRUNCATE TABLE `catalog_product_link_attribute`;";
$dsql.=" TRUNCATE TABLE `catalog_product_link_attribute_decimal`;";
$dsql.=" TRUNCATE TABLE `catalog_product_link_attribute_int`;";
$dsql.=" TRUNCATE TABLE `catalog_product_link_attribute_varchar`;";
$dsql.=" TRUNCATE TABLE `catalog_product_link_type`;";
$dsql.=" TRUNCATE TABLE `catalog_product_option`;";
$dsql.=" TRUNCATE TABLE `catalog_product_option_price`;";
$dsql.=" TRUNCATE TABLE `catalog_product_option_title`;";
$dsql.=" TRUNCATE TABLE `catalog_product_option_type_price`;";
$dsql.=" TRUNCATE TABLE `catalog_product_option_type_title`";
$dsql.=" TRUNCATE TABLE `catalog_product_option_type_value`;";
$dsql.=" TRUNCATE TABLE `catalog_product_super_attribute`;";
$dsql.=" TRUNCATE TABLE `catalog_product_super_attribute_label`;";
$dsql.=" TRUNCATE TABLE `catalog_product_super_attribute_pricing`;";
$dsql.=" TRUNCATE TABLE `catalog_product_super_link`;";
$dsql.=" TRUNCATE TABLE `catalog_product_enabled_index`;";
$dsql.=" TRUNCATE TABLE `catalog_product_website`;";
$dsql.=" TRUNCATE TABLE `catalog_product_entity`;";
$dsql.=" TRUNCATE TABLE `cataloginventory_stock`;";
$dsql.=" TRUNCATE TABLE `cataloginventory_stock_item`;";
$dsql.=" TRUNCATE TABLE `cataloginventory_stock_status`;";
$dsql.=" INSERT INTO `catalog_product_link_type`(`link_type_id`,`code`) VALUES (1,'relation'),(2,'bundle'),(3,'super'),(4,'up_sell'),(5,'cross_sell');";
$dsql.=" INSERT INTO `catalog_product_link_attribute`(`product_link_attribute_id`,`link_type_id`,`product_link_attribute_code`,`data_type`) VALUES (1,2,'qty','decimal'),(2,1,'position','int'),(3,4,'position','int'),(4,5,'position','int'),(6,1,'qty','decimal'),(7,3,'position','int'),(8,3,'qty','decimal');";
$dsql.=" INSERT INTO `cataloginventory_stock`(`stock_id`,`stock_name`) VALUES (1,'Default')";
echo $sqls."
";
echo $dsql."
";
$sql="$dsql;$sqls";
if($mysqli->multi_query($sql)){
echo "CheckProduct Ok".$mysqli->insert_id."
";
echo "affected_rows".$mysqli->affected_rows."
";
}
else{
echo"CheckProduct false";
}
$mysqli->close();
}
?>
本文出自 “mcshell学习博客” 博客

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Wie verwende ich LeakSanitizer zum Debuggen von C++-Speicherlecks? Installieren Sie LeakSanitizer. Aktivieren Sie LeakSanitizer über das Kompilierungsflag. Führen Sie die Anwendung aus und analysieren Sie den LeakSanitizer-Bericht. Identifizieren Sie Speicherzuordnungstypen und Zuweisungsorte. Beheben Sie Speicherlecks und stellen Sie sicher, dass der gesamte dynamisch zugewiesene Speicher freigegeben wird.

In diesem Artikel werden Verknüpfungen für das Debuggen und Analysieren von Go-Funktionen vorgestellt, einschließlich des integrierten Debuggers dlv, der zum Anhalten der Ausführung, zum Überprüfen von Variablen und zum Festlegen von Haltepunkten verwendet wird. Protokollierung: Verwenden Sie das Protokollpaket, um Nachrichten aufzuzeichnen und sie während des Debuggens anzuzeigen. Das Leistungsanalysetool pprof generiert Anrufdiagramme und analysiert die Leistung und verwendet gotoolpprof zur Datenanalyse. Praktischer Fall: Analysieren Sie Speicherlecks über pprof und generieren Sie ein Aufrufdiagramm, um die Funktionen anzuzeigen, die Lecks verursachen.

Parallelitätstests und Debugging Parallelitätstests und Debugging in der gleichzeitigen Java-Programmierung sind von entscheidender Bedeutung und die folgenden Techniken stehen zur Verfügung: Parallelitätstests: Unit-Tests: Isolieren und testen Sie eine einzelne gleichzeitige Aufgabe. Integrationstests: Testen der Interaktion zwischen mehreren gleichzeitigen Aufgaben. Lasttests: Bewerten Sie die Leistung und Skalierbarkeit einer Anwendung unter hoher Last. Parallelitäts-Debugging: Haltepunkte: Thread-Ausführung anhalten und Variablen überprüfen oder Code ausführen. Protokollierung: Thread-Ereignisse und -Status aufzeichnen. Stack-Trace: Identifizieren Sie die Quelle der Ausnahme. Visualisierungstools: Überwachen Sie die Thread-Aktivität und die Ressourcennutzung.

Zu den Tools zum Debuggen von asynchronem PHP-Code gehören: Psalm: ein statisches Analysetool, das potenzielle Fehler findet. ParallelLint: Ein Tool, das asynchronen Code prüft und Empfehlungen gibt. Xdebug: Eine Erweiterung zum Debuggen von PHP-Anwendungen durch Aktivieren einer Sitzung und schrittweises Durchgehen des Codes. Weitere Tipps umfassen die Verwendung von Protokollierung, Assertionen, die lokale Ausführung von Code und das Schreiben von Komponententests.

Zu den häufigsten PHP-Debugging-Fehlern gehören: Syntaxfehler: Überprüfen Sie die Codesyntax, um sicherzustellen, dass keine Fehler vorliegen. Undefinierte Variable: Bevor Sie eine Variable verwenden, stellen Sie sicher, dass sie initialisiert und ihr ein Wert zugewiesen ist. Fehlende Semikolons: Fügen Sie allen Codeblöcken Semikolons hinzu. Funktion ist undefiniert: Überprüfen Sie, ob der Funktionsname richtig geschrieben ist und stellen Sie sicher, dass die richtige Datei oder PHP-Erweiterung geladen ist.

Zum Debuggen rekursiver Funktionen stehen die folgenden Techniken zur Verfügung: Überprüfen Sie den Stack-Trace. Legen Sie Debug-Punkte fest. Überprüfen Sie, ob der Basisfall korrekt implementiert ist. Zählen Sie die Anzahl der rekursiven Aufrufe. Visualisieren Sie den rekursiven Stack

Die neuen Funktionen von PHP-Funktionen vereinfachen den Entwicklungsprozess erheblich, darunter: Pfeilfunktion: Bietet eine prägnante anonyme Funktionssyntax, um Coderedundanz zu reduzieren. Deklaration von Eigenschaftstypen: Geben Sie Typen für Klasseneigenschaften an, verbessern Sie die Lesbarkeit und Zuverlässigkeit des Codes und führen Sie zur Laufzeit automatisch eine Typprüfung durch. Nulloperator: Prüft und verarbeitet präzise Nullwerte und kann zur Verarbeitung optionaler Parameter verwendet werden.

Die Ergebnisse der Tsinghua-Universität mithilfe von Licht zum Trainieren neuronaler Netze wurden kürzlich in Nature veröffentlicht! Was soll ich tun, wenn ich den Backpropagation-Algorithmus nicht anwenden kann? Sie schlugen eine Trainingsmethode im Fully Forward Mode (FFM) vor, die den Trainingsprozess direkt im physischen optischen System durchführt und so die Einschränkungen herkömmlicher digitaler Computersimulationen überwindet. Vereinfacht ausgedrückt war es früher notwendig, das physikalische System im Detail zu modellieren und diese Modelle dann auf einem Computer zu simulieren, um das Netzwerk zu trainieren. Die FFM-Methode eliminiert den Modellierungsprozess und ermöglicht es dem System, experimentelle Daten direkt zum Lernen und zur Optimierung zu nutzen. Dies bedeutet auch, dass beim Training nicht mehr jede Schicht von hinten nach vorne überprüft werden muss (Backpropagation), sondern die Parameter des Netzwerks direkt von vorne nach hinten aktualisiert werden können. Um eine Analogie wie ein Puzzle zu verwenden: Backpropagation
