एक MySQL तालिका बनाने और किसी भी JSON चर से मान सम्मिलित करने के लिए सरल कोड टुकड़ा। यह एक तेज़ हैक है.. फ़ील्ड प्रकार आदि जांचें :) शायद बेहतर तरीके हैं, लेकिन यह एक काम करता है और मैन्युअल फ़ील्ड-नामकरण में मुझे पहले ही घंटों बचा चुका है
इसे ऑब्जेक्ट्स को संभालने वाली एक संबंध तालिका बनाने के लिए भी संशोधित किया जा सकता है। अब, यह सरणी से बने JSON सामान के लिए बना है, न कि ऑब्जेक्ट यानी सरणियों में सरणियों के लिए।
<?php
JSON_to_table($place_your_JSON_var_here_please);
function JSON_to_table($j_obj, $tblName = "New_JSON_table_" . time()){
$j_obj = json_decode($your_JSON_variable, true);
if(!mysql_num_rows( mysql_query("SHOW TABLES LIKE '" . $tblName . "'"))){
$cq = "CREATE TABLE ". $tblName ." (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,";
foreach($j_obj as $j_arr_key => $value){
$cq .= $j_arr_key . " VARCHAR(256),";
}
$cq = substr_replace($cq,"",-1);
$cq .= ")";
mysql_query($cq) or die(mysql_error());
}
$qi = "INSERT INTO $tblName (";
reset($j_obj);
foreach($j_obj as $j_arr_key => $value){
$qi .= $j_arr_key . ",";
}
$qi = substr_replace($qi,"",-1);
$qi .= ") VALUES (";
reset($j_obj);
foreach($j_obj as $j_arr_key => $value){
$qi .= "'" . mysql_real_escape_string($value) . "',";
}
$qi = substr_replace($qi,"",-1);
$qi .= ")";
$result = mysql_query($qi) or die(mysql_error());
return true;
}
?>