SocFishing

SocFishing
Рейтинг
118
Регистрация
26.09.2013
Должность
null
Интересы
null
null
imbalance:
Т.е. в данном варианте скрипт будет выполнятсья "все время" и постоянно мониторить нужный порт?

Если скрипт не выходит из цикла или ожидания, то в фоне он будет работать бесконечно долго. В вашем случае при прослушивании порта потребуется такой запуск.

nohup просто перенаправляет консольный вывод, вам не нужно держать открытый SSH коннект. Процесс будет запущен в фоне, как демон.

error_reporting(E_ALL);
set_time_limit(0);
ob_implicit_flush();
$address="localhost";
$port=7777;
$sock=socket_create(AF_INET,SOCK_STREAM,0);
if($sock<0)
echo "socket_create() failed! reason: ".socket_strerror($sock)."\n";
$ret=socket_bind($sock,$address,$port);
if ($ret<0)
echo "socket_bind() failed! reason: ".socket_strerror($ret)."\n";
$ret=socket_listen($sock,5);
if ($ret<0)
echo "socket_listen() failed! reason: ".socket_strerror($ret)."\n";
while(true){
$msgsock=socket_accept($sock);
if ($msgsock<0){
echo "socket_accept() failed! reason: ".socket_strerror($msgsock)."\n";
break;
}
$msg="Welcome!";
socket_write($msgsock,$msg,strlen($msg));
while(true){
$buf=socket_read($msgsock,2048);
if($buf===false){
echo "socket_read() failed! reason: ".socket_strerror($ret)."\n";
break 2;
}
if(!$buf=trim($buf))
continue;
$talkback="Answer!";
socket_write($msgsock,$talkback,strlen($talkback));
}
socket_close($msgsock);
}
socket_close($sock);

Вам нужно запустить скрипт в SSH.

nohup php5 -q /var/www/script.php > script.log 2>&1 &

обратите внимание, если у вас php5 или php. nohup позволяет запустить скрипт демоном, с переопределением вывода в лог.

А зачем закрывать? в вашем случае просто введенные пользователем данные вырезайте из них теги. В PHP функция strip_tags('test <script>alert();</script>');

Этого достаточно я думаю. Так как html и xml не исполняемые файлы и вряд ли как-то повредят вашему сайту.

Яндекс касса однозначно. Не вздумайте садиться на робокассу, шлачина в плане тех. поддержки и условий.

Как на счет

http://reformal.ru

Или поставьте виджет комментариев

https://www.hypercomments.com

Или блоги без баз:

http://reloadcms.com

http://www.rumba.net.ru

http://www.pluck-cms.org/?file=home

Вашим способом не думаю что возможно без костылей.

Может быть вам так сделать:

<a href="data:text/html;charset=utf-8,<script>window.location.href='http://ya.ru';</script>">test</a>

Удобные? например плагин для Wp https://github.com/wp-plugins/social-networks-auto-poster-facebook-twitter-g

Можно и отдельно использовать

<?php
require_once "nxs-api/nxs-api.php";
$email = 'YourEmail@gmail.com';
$pass = 'YourPassword';
$msg = 'Post this to Google Plus!';
$nt = new nxsAPI_GP();
$loginError = $nt->connect($email, $pass);
if (!$loginError)
{
$result = $nt -> postGP($msg);
}
else echo $loginError;

if (!empty($result) && is_array($result) && !empty($result['post_url']))
echo '<a target="_blank" href="'.$result['post_url'].'">New Post</a>';
else
echo "<pre>".print_r($result, true)."</pre>";
?>
Ragnarok:

всё правильно. теперь, добавляю & в foreach

Для того, чтобы напрямую изменять элементы массива внутри цикла, переменной $a должен предшествовать знак &. В этом случае значение будет присвоено по ссылке.

<?php
$ar = array(1,2,3);
foreach ($ar as &$a) {
$a+=1;
}
unset($a);
VAR_DUMP($ar);
<?php
$ar = array(1,2,3);
$b = 0;
foreach ($ar as $a) {
$ar[$b]++;
$b++;
}
VAR_DUMP($ar);

Я уже давно отвык от win, вы описали процесс вызова

wscript c:\test.js

?

В таком случае в исполняемом это скорее всего с использованием activex

var Shell = new ActiveXObject("WScript.shell");
Shell.run('wscript c:\test.js');

В этом случае что мешает не записать в массив js бинарный код и записать его на диск (activex) и так же выполнить. Куда меньше телодвижений и костылей. Или опишите процесс ради любопытства.

Всего: 1070