Как да използваме IMPLODE() за MYSQL
Автор: index
В тази „статия“ ще разгледаме как се използва функцията implode(); тя е точно обратна на explode();
Eто го и кода :
function insert_sql_row($poleta,$zapisi,$table) {
if(is_array($poleta)== TRUE AND is_array($zapisi)== TRUE AND isset($table) == TRUE ) {
$sql = "INSERT INTO `{$table}` (`".implode("`,`",$poleta)."`)VALUES(".implode(',',$zapisi).");";
$q = mysql_query($sql);
if($q == TRUE ) return true;
}
return false;
}
$poleta = array(
'0'=>"uid",'1'=>"name",'2'=>"pass",'3'=>"mail",'4'=>"timereg",
'5'=>"avatar",'6'=>"signature",'7'=>"level",'8'=>"iplong");
$table = 'users';
$zapisi = array(
'0'=>"''",'1'=>"'$name'",'2'=>"'$pass'",'3'=>"'$mail'",'4'=>"'$time'",
'5'=>"''",'6'=>"''",'7'=>"'1'",'8'=>"'$ip'");
$isr = insert_sql_row($poleta,$zapisi,$table);
if($isq == TRUE) { echo " Успешно добавен юзер "; }
implode има 2 аргумента.
първият е за информацията която ще бъде м/у двата.
вторият е за информацията която ще бъде след първият.
Тоест, кода : implode(‘1,’,array(1,2,3,4,5,6,7,8,9,0)); ще върне
1,1,21,31,41,51,…..01,
Защо така ?
защото първи аргумент ни е : “ 1 , “ ( едно запетайка )
втори аргумент е цифрова редица от 1 до 9 + 0 .
Кода за Внасяне който съм дал най-отгоре в статията ще върне :
INSERT INTO `users`(`uid`,`name`,`pass`,`mail`,`timereg`,`avatar`,`signature`,`level`,`iplong`)VALUES('','test','098f6bcd4621d373cade4e832627b4f6','admin@pspstore-bg.net','1252146950','','','1','2130706433');



