понедельник, 23 августа 2021 г.

Java script в Wordpress

 Интересный эффект можно получить используя прямые вставки java script в содержимое страниц на wordpress, для этого нужно отключить визуальный редактор и писать код напрямую.

Пример виден на сайте https://ali-shoping.uk здесь использован ajax applet для получения данных на лету с другого источника.

<script>

/ функция создания асинхронного запроса ajax

/dir параметр который передаём

/name  то же

 function go(dir,na){

var request = new XMLHttpRequest();

function reqReadyStateChange() {

    if (request.readyState == 4) {

        var status = request.status;

        if (status == 200) {

            document.getElementById("output").innerHTML=request.responseText;

        }

    }

}

// строка с параметрами для отправки

var body = "p=" + dir + "&name="+na; 

request.open("GET", "http://localhost"+body);  // адрес для запроса

request.onreadystatechange = reqReadyStateChange;

request.send();


 }

</script>

<div id="output"> тут вывод результата </div>

пятница, 19 февраля 2021 г.

preg_match_all вытаскивание данных и вывод результата PHP

 preg_match_all  функция глобального шаблона, вытаскивает всё что соответствует значению шаблона.

Например 

preg_match_all('/<a[^>]*?>(.*?)<\/a>/', $text, $matches);   //вытаскивание текста из ссылок

$text= какой то код html.

$matches = массив результата выборки.

foreach ($matches[1] as $val) {

echo $val."<br>"; 

}

перебираем массив и выводим результат.

$matches[0]

$matches[1]  

Элементы массива,

что конкретно нужно вывести можно посмотреть через

print_r($matches);

Перебор массива и вывод результата PHP

Как читать массив и вывести результат.

$text="какие то данные";

$mass=array($text); // объявляем массив

Начинаем перебирать массив по элементам  и выводим результат

 foreach ($mass as $element) {

echo $element."<br>";

}

Убрать дубли из массива

$m=array_unique($mass,SORT_REGULAR); // убирает дубли из массива

выводим данные без дублей

 foreach ($m  as $element) {

echo $element."<br>";

здесь можно сделать запись в БД

mysqli_query($connect,"INSERT INTO table VALUES('',."$element".,)");

}

таким образом каждый элемент массива запишется в таблицу отдельной строкой



вторник, 16 февраля 2021 г.

Регулярные выражения PHP

preg_replace

str_replace

$promo=preg_replace('/\s+/', ' ', $text);  заменяет длинные пробелы на одинарные

$promo=preg_replace('/<a[^>]*>.*?<\/a>/', '', $text);   заменяет все ссылки на пробел

$promo=str_replace('  ', ' + ', $text);  заменяет пробел на +

понедельник, 15 февраля 2021 г.