php - готовые решения для типовых задач

Ajaxj + php form file upload

Ajaxj + php form file upload

Открыть

        
Ajax File upload

$('#form').submit(function (e) {

    e.preventDefault();
    var $that = $(this);
    var form_data = new FormData($that.get(0));

    $.ajax({
        method: "POST",
        url: "form_connector.php",
        data: form_data,
        processData: false,
        contentType: false,
        //dataType: "json",
        success: function(response){ console.log(response);},
        error: function(response){ console.log(response);},
    });

    return false;
});


PHP::

$_POST['--//--']

$_FILES['--//--']

$_FILES['input_name']['name'] - string


//With php mailer ( +smtp как вариант )
if (isset($_FILES['partner_photo'])) {
    if ($_FILES['partner_photo']['error'] == 0) {
        $mail->AddAttachment($_FILES['partner_photo']['tmp_name'], $_FILES['partner_photo']['name']);
    }
}

        
    

Рекурсивное удаление содержимого директории

Открыть

        
function rm($dir) {
    if ($objs = glob($dir."/*")) {
       foreach($objs as $obj) {
         is_dir($obj) ? rm($obj) : unlink($obj);
       }
    }
    rmdir($dir);
  }
echo __DIR__;

rm('dir'); 
        
    

Факториал числа:

Открыть

        
function factorial($n)
{
 if ($n == 0) return 1;
    return $n * factorial($n-1);
}
$result = factorial(10);
print_r( "10! = " . $result);
        
    

Удаление повторяющихся элементов массива:

Открыть

        
// delete dublicate products
                    $keys=array();
                    foreach($data as $k=>$val) {
                        if(array_key_exists($val['product_id'],$keys)) {
                            unset($data[$k]);
                        } else {
                            $keys[$val['product_id']]=1;
                        }
                    }
//end foreach for delete dublicate products  var_dump($data)

Где product_id - ключ по которому чистим
$data - входной массив  вида:

$data = array(
            [0] => Array
                (
                    [product_id] => 2174
                )

            [1] => Array
                (
                    [product_id] => 2175
                )

            [2] => Array
                (
                    [product_id] => 2584
                )

            [3] => Array
                (
                    [product_id] => 2588
                )
            )
            
        
    

Modx Revo получить id шаблона и массовая замена шаблона дочерних ресурсов

Открыть

        
/******  1  ********/

$res = $modx->getObject('modResource',172);
return $res->get('template');

/******  2  ********/


$resources = $modx->getCollection('modResource',array('parent' => 19));   //берем ресурсы из категории "19"
foreach ($resources as $res) {
    $res->set('template', 21);                                             //устанавливаем им шаблон "3"
    $res->save();                                                         //сохраняем...
}
        
    

Подрезка слов по количеству из текста

Открыть

        
$text = 'Microsoft был основан Биллом Гейтсом ещё в далёком 1975 году.';

$array = explode(" ",$text); // перерабатываем строку в массив
$array = array_slice($array,0,5); // выбираем первые 5 слов-элементов
$newtext = implode(" ",$array); // массив снова перерабатываем в строку
$newtext = $newtext.'...';

echo $newtext;//Выведет 'Microsoft был основан Биллом Гейтсом'
        
    
Тэги:

Комментарии (2)

retter241

snipp.ru - отличная сборка

retter241

$text = 'Microsoft был основан Биллом Гейтсом ещё в далёком 1975 году.';

$array = explode(" ",$text); // перерабатываем строку в массив
$array = array_slice($array,0,5); // выбираем первые 5 слов-элементов
$newtext = implode(" ",$array); // массив снова перерабатываем в строку

echo $newtext;//Выведет 'Microsoft был основан Биллом Гейтсом'


Оставить комментарий

Success/Error Message Goes Here

TOP