Помогите понять почему перестал работать php скрипт

1 23
dimsog
На сайте с 08.08.2011
Offline
149
#21

karen1994, все require также нужны, лучше папку со скриптом + дамп базы. тогда можно тут развернуть будет.

ihor vps -> ihc.ru
S
На сайте с 30.09.2016
Offline
469
#22

Рапортую по результатам работы: я был неправ, предполагая, что скрипт отваливается по таймауту. Причина была в том, что запись в БД производилась в поле VARCHAR ограниченной длины. И когда длина блока данных превышала допустимую, скрипт зависал.

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
Z0
На сайте с 03.09.2009
Offline
759
#23

Версия php на сервере может поменяться, как вариант. У меня так было пару раз с отправкой почты с аттачментом.

А, все, разобрались, ну и хорошо... :)

K1
На сайте с 15.11.2014
Offline
153
#24

Sitealert, спасибо Вам огромное за помощь!

Сейчас появилась другая проблема...

Добавляю в скрипт свою базу песен и там вместо

Mr. President - Coco Jambo (DJ XN Remix) добавляется xn--80ayrec

или вместо Наизусть добавляет xn--80aocsxgf8e

В чем может быть косяк? При том, что это не со всеми так, а вот только блин, с какими то избранными названиями...

В таблице базы стоит Тип: ТЕХТ

По умолчанию: Нет

Сравнение: Утф8_бин

Текст уже и в утф перекодировал и в анси, ситуация та же(

K1
На сайте с 15.11.2014
Offline
153
#25

Вот так выглядит файл, через который и производится загрузка запросов

<?php

if (isset($_GET['instb'])) {

$spis=$_POST['adr'];
if ($spis=='') {die('Пришел пустой список, отменено.');}

$sp=explode("\r\n",$spis); $k=count($sp);

for ($i=0; $i<$k; $i++) {

$name=mysql_real_escape_string(trim($sp[$i]));
$name=mb_strtolower($name,"utf-8");
$name=$idn->encode($name);

$tips=(int)$_POST['tips'];
$geo=(int)$_POST['geo'];


$res=mysql_query("SELECT * FROM muv_baza WHERE adr='$name' LIMIT 1"); if (mysql_num_rows($res)<1) {
$res2=mysql_query("INSERT INTO muv_baza (adr,geo,tipa,active,nwdate,nwkolvo) VALUES ('$name','$geo','$tips','1','1999-12-31','0')");
echo '<li>'.$name.' добавлен';
}
else {
echo '<li>'.$name.' дубль';
}
}

}

else {
echo '<h4>Добавление в базу списком, один в строке</h4><form action="'.$url0.'&instb" method="POST">
<table>
<tr><td colspan="2"><textarea name="adr" style="width:600px;height:400px;" required></textarea><br><br></td></tr>
<tr><td>Тип</td><td><select name="tips"><option value="0">Без указания</option>';
$res=mysql_query("SELECT * FROM muv_tips ORDER BY name"); while ($row=mysql_fetch_assoc($res)) {echo '<option value="'.$row['id'].'">'.$row['name'].'</option>';}
echo '</select></td></tr>
<tr><td>Гео</td><td><select name="geo"><option value="0">Без указания</option>';
$res=mysql_query("SELECT * FROM muv_geo ORDER BY name"); while ($row=mysql_fetch_assoc($res)) {echo '<option value="'.$row['id'].'">'.$row['name'].'</option>';}
echo '</select></td></tr>
</table>
<br><input type="submit" value="Сохранить">
</form>';
}

?>
K
На сайте с 08.04.2010
Offline
89
#26
karen1994:
Сейчас появилась другая проблема...

Предположу, что из-за этого:

$name=$idn->encode($name);

Попробуйте без этой строчки

S
На сайте с 30.09.2016
Offline
469
#27

Ну да, там надо понять, что имел в виду автор скрипта, и что пытается получить пользователь скрипта. Потому что кодировать пуникодом название песни - не самое интересное занятие.

K1
На сайте с 15.11.2014
Offline
153
#28

Sitealert, dimsog, помогите еще разок с этим скриптом :)

Получается, что сейчас одновременно скрипт прогоняет сразу 2 сайта по 1 ссылки, через 60 секунд по другой и так дальше

Можно сделать, чтобы именно между прогоном по ссылке была пауза. Например, берется ссылка 1 прогоняется по 1-му сайту, через 30 сек по втором, через 30 по третьем и так далее и пока не прогонит все добавленные сайты, потом берет вторую ссылку и точно также повторяет?

Просто прогонять за 1 секунду сразу 2 запроса, сильно нагружает аккаунт вк (сайт парсит музыку с вк, а прогонщик добавляет в юрл название песни, тем самым добавляя ее на сайт). Помогите плз

Вот 2 php кода

1-й записан в index.php и отвечает за сам прогон

else if (isset($_GET['progon'])) {

require_once 'progon/start.php';
sleep(60);

}

а вот файл start.php - https://pastebin.com/mbTinqys

S
На сайте с 30.09.2016
Offline
469
#29

Я прошу прощения, но для этого надо вникать в алгоритмы, а мне, честно говоря это не особо интересно.

Могу сказать одно: мне кажется, что для нагрузки на аккаунт всё равно, будет это 1 ссылка за 30 секунд или 2 ссылки за 60 секунд.

1 23

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий