Модератор форума: JonMagon  
Проблемы при использовании PHP
Модератор форума
Сообщение # 1 | 18:14:01
Если у Вас возникли проблемы при работе с PHP (ошибки, длительная загрузка скриптов, неработоспособность функций и т. д.), Вы можете написать в данной теме.
SOFTOLAB_COM
Сообщений: 1363
Репутация: 777

Сообщение # 241 | 22:35:28
Zhas777, кто же пишет такой уязвимый код?
Что ж у вас все с поста сразу в бд идет без фильтрации?
Вот вам и способ узнать некоторую информацию о вашей бд smile

Добавлено (03 Мар 2013, 22:35:28)
---------------------------------------------
Что творится с php сервером?
Загрузить файлы на него один раз из десяти получается.
Постоянно ругается ошибкой 500.
Так же часто отказывается работать require_once.


Благодарности можно оставить — в репутации.
Помощью в ЛС не занимаюсь, есть форум.
Занимаюсь сайтами на платной основе.
Шаманю на php и mysql с использованием бубна 80 lvl.
Ifgeniy
Сообщений: 5
Репутация: 0

Сообщение # 242 | 18:13:55
Я не очень опытен в php. И имею проблему со следующим:
Сам php
Код
<?php
   
$wpId=$_POST['wpId'];
$wpId=htmlspecialchars ($wpId);
   
$image=$_POST['image'];
$image=htmlspecialchars ($image);
   
$trueDimensions=$_POST['trueDimensions'];
$trueDimensions=htmlspecialchars ($trueDimensions);
   
$crop=$_POST['crop'];
$crop=htmlspecialchars ($crop);
   
$name=$_POST['name'];
$name=htmlspecialchars ($name);
    
$phone=$_POST['phonenum'];
$phone=htmlspecialchars ($phone);
    
$message=$_POST['message'];
$message=htmlspecialchars ($message);
$message=nl2br($message);
    
$email=$_POST['mail'];
$email=htmlspecialchars ($email);
    
$ref=getenv('HTTP_REFERER');
    
if ($phone=="" || $email=="" ) {
echo "<center><b>Заповніть всі обов'язкові поля!</b></center>";
echo "<meta http-equiv='refresh' content='2 url=$ref'>";
exit;
}
    
$admin_email="ххх"; # E-Mail администратора
if (@mail("$admin_email",
"Замовлення прорахунку вартості фотошпалер",
"Name: $name;
Login: $phonenum;
E-Mail: $mail;
Subject: $wpId;
Image: $image;
Crop: $crop;
Message: $message;
"From: $mail\r\nReply-To: $mail\r\nContent-Type: text/html; charset=windows-1251\r\nContent-Transfer-Encoding: 8bit")) {
echo "<Color:c09><center><b>Ваше повідомлення успішно надіслано! Наш менеджер зателефонує Вам на протязі робочого дня.</b></center>";
}
?>

Ну и страница 
Код
<script language="JavaScript">
function check() {
if (form.wpId.value=="" || form.image.value=="" || form.trueDimensions.value=="" || form.crop.value=="" || form.name.value=="" || form.phonenum.value=="" || form.mail.value=="" || form.massage.value=="") {
alert ("check fields!");
}
else {
form.submit();
}
}
  </script>
   
<form action="http://адрес сайта/php/название.php" method="post" id="form">
   
<input type="hidden" name="wpId" id="wallpaper_id" value="6249">
<input type="hidden" name="image" value="293.87755102041,306.12244897959">
<input type="hidden" name="trueDimensions" id="trueDimensions" value="293.87755102041,306.12244897959">
<input type="hidden" name="crop" id="cropCoords" value="0,0,294,306,294,306">
   
<div class="form-row"><label for="">Ведіть Ваше ім'я:<span class="required-star">*</span></label><input type="text" name="name" maxlength="100"></div>
<div class="form-row"><label for="">Телефон:<span class="required-star">*</span></label><input type="text" name="phonenum" maxlength="13"></div>
<div class="form-row"><label for="">Email:<span class="required-star">*</span></label><input type="text" name="mail" maxlength="100"></div>
<div class="form-row"><label for="">Комментар:</label><textarea name="massage" maxlength="500" style="margin: 2px; width: 194px; height: 72px;"></textarea></div>
<div class="form-row" style=" font-size:16px;">* - обов'язкові для заповнення поля</div>
<div class="form-row"><button type="submit">Замовити</button></div>
   
</form>


И как результат 
Код
({"SCRIPTDATA":"","ERROR":""})
Как я понимаю проблема в том, что на укозе такое не пройдет, но с мануалом по изменению и вставке скриптов не разобрался.
Ferro7
Сообщений: 285
Репутация: 230

Сообщение # 243 | 17:48:30
Функция mail() не доступна в кастрированном PHP от uCoz.
Гуглите по запросу "отправка почты php без mail"

Вы полюбили меня. Здесь я. (с)
Ifgeniy
Сообщений: 5
Репутация: 0

Сообщение # 244 | 17:46:01

Код
<?
$___notjson=1;
   
$wpId=$_POST['wpId'];
$wpId=htmlspecialchars ($wpId);
   
$image=$_POST['image'];
$image=htmlspecialchars ($image);
   
$trueDimensions=$_POST['trueDimensions'];
$trueDimensions=htmlspecialchars ($trueDimensions);
   
$crop=$_POST['crop'];
$crop=htmlspecialchars ($crop);
   
$name=$_POST['name'];
$name=htmlspecialchars ($name);
    
$phone=$_POST['phonenum'];
$phone=htmlspecialchars ($phone);
    
$message=$_POST['message'];
$message=htmlspecialchars ($message);
$message=nl2br($message);
    
$email=$_POST['mail'];
$email=htmlspecialchars ($email);
    
$ref=getenv('HTTP_REFERER');
    
     $ms_email       = 'ххххх@yandex.ua';        //ваш e-mail адрес
     $ms_address     = 'smtp.yandex.ua';     // адрес smtp-сервера
     $ms_port        = 25;               // порт (стандартный smtp - 25)
     $ms_login       = "ххххх";          // логин к ящику
     $ms_pwd         = "ззззззз";        // пароль к ящику
     $ms_codepage    = 'windows-1251';           //кодировка в которой будут уходить письма, utf-8, Windows-1251, итд...
   
     if (mail_socket('admin@gmail.com','ххххх@yandex.ua','тема','Name: $name;
Login: $phonenum;
E-Mail: $mail;
Subject: $wpId;
Image: $image;
Crop: $crop;
Message: $message;'))  
     echo "<Color:c09><center><b>Ваше повідомлення успішно надіслано! Наш менеджер зателефонує Вам на протязі робочого дня.</b></center>";
   
   
   
     ob_implicit_flush();
   
      function write_smtp_response($socket, $msg) {
          $msg = $msg."\r\n";
          socket_write($socket, $msg, strlen($msg));
          $read = socket_read($socket, 1024);
          if ($read{0} != '2' && $read{0} != '3') {
             if (!empty($read)) return "ERROR: ".$read."\n"; else return "ERROR: Unknown";
          }
      }
   
     function ms_convert($data) {
         global $ms_codepage;
        return "=?$ms_codepage?B?".base64_encode($data)."?=";
     }
   
     function mail_socket($to,$reply_to,$subject,$message) {
         global $ms_address, $ms_port, $ms_login, $ms_pwd, $ms_email, $ms_codepage, $ms_to;
         if ($to=='') $to=$ms_to;
         if ($reply_to=='') $reply_to=$ms_email;
       try {
          $a='';
          $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
          if ($socket < 0) $a='socket_create failed: '.socket_strerror(socket_last_error());
          if ($a=='') if (!socket_connect($socket, $ms_address, $ms_port)) $a='socket_connect failed: '.socket_strerror(socket_last_error());
          if ($a=='') $a=write_smtp_response($socket, 'EHLO '.$ms_login);
          if ($a=='') $a=write_smtp_response($socket, 'AUTH LOGIN');
          if ($a=='') $a=write_smtp_response($socket, base64_encode($ms_login));
          if ($a=='') $a=write_smtp_response($socket, base64_encode($ms_pwd));
          if ($a=='') $a=write_smtp_response($socket, 'MAIL FROM:<'.$ms_email.'>');
          if ($a=='') $a=write_smtp_response($socket, 'RCPT TO:<'.$to.'>');
          if ($a=='') $a=write_smtp_response($socket, 'DATA');
          if ($a=='') {
              $msg='';
              $msg.="From: <$ms_email>\r\n";
              $msg.="X-Mailer: http://zgbox.ru\r\n";
              $msg.="To: $to\r\n";
              $msg.= "Subject: ".ms_convert($subject)."\r\n";
              if ($reply_to!=='') $msg.= "Reply-To: $reply_to\r\n";
              $msg.="Content-Type: text/plain; charset=$ms_codepage;\r\n\r\n";
              $msg.=$message."\r\n.";
              $a=write_smtp_response($socket, $msg);
          }
          if ($a=='') $a=write_smtp_response($socket, 'QUIT');
   
       } catch (Exception $e) {
          $a="\nError: ".$e->getMessage();
       }
       if (isset($socket)) {
          socket_close($socket);
       }
         if ($a=='') return true; else { echo "mail_socket() Error: ".$a; return false; }
   
     }
   
?>


страница та же что и выше. Только ответ сервера 
Код
Ошибка HTTP 500 (Internal Server Error): При попытке сервера выполнить запрос возникла неожиданная ситуация.

Скрипт рабочий, проверил на другом хостинге
Abu-Abubakr
Сообщений: 40
Репутация: 51

Сообщение # 245 | 18:34:43
Ifgeniy,
Цитата (Ferro7)
Функция mail() не доступна в кастрированном PHP от uCoz.
Гуглите по запросу "отправка почты php без mail"

Ifgeniy
Сообщений: 5
Репутация: 0

Сообщение # 246 | 19:11:04
Цитата (Abu-Abubakr)
Функция mail()
Так у меня альтернатива отправка сообщения по средствам SMTP. Отправка происходит не из юкоза, а со стороннего почтового клиента
взял отсюда отправка почты без mail() и sendmail
Ferro7
Сообщений: 285
Репутация: 230

Сообщение # 247 | 23:32:13
Цитата (Ifgeniy)
Ошибка HTTP 500 (Internal Server Error): При попытке сервера выполнить запрос возникла неожиданная ситуация.

Аах.. да, как же я мог забыть это smile
...

Вобщем, Ifgeniy, спешу вас огорчить: на php ucoz есть трабла с сокетами, и на этом форуме даже уже кто-то жаловался по этому поводу, но, походу дела, разработчики uCoz проигнорировали эти жалобы.

Я где-то полгода назад сам с этим столкнулся, когда писал отправку почты на ucoz одному челу. PHP виснет где-то между записью (fput) и чтением (fget) сокетов и затем вырубается системой по истечении лимита времени на работу. Я писал об этом в ЛС joncofe, Виктору, но, воз и ныне там (всем пофиг).

Ifgeniy, можете попробовать написать в техподдержку, может, начнут уже работать. 500 - это ошибка сервера, а не программиста php, так что вы будете правы в любом случае smile

Вы полюбили меня. Здесь я. (с)
Ifgeniy
Сообщений: 5
Репутация: 0

Сообщение # 248 | 19:07:08
Цитата (Ferro7)
Аах.. да, как же я мог забыть это ...

Вобщем, Ifgeniy, спешу вас огорчить: на php ucoz есть трабла с сокетами, и на этом форуме даже уже кто-то жаловался по этому поводу, но, походу дела, разработчики uCoz проигнорировали эти жалобы.

Я где-то полгода назад сам с этим столкнулся, когда писал отправку почты на ucoz одному челу. PHP виснет где-то между записью (fput) и чтением (fget) сокетов и затем вырубается системой по истечении лимита времени на работу. Я писал об этом в ЛС joncofe, Виктору, но, воз и ныне там (всем пофиг).

Ifgeniy, можете попробовать написать в техподдержку, может, начнут уже работать. 500 - это ошибка сервера, а не программиста php, так что вы будете правы в любом случае

судя по всему стоит отказаться от хостинга. Хорошо что не проплатил пакет на несколько лет)
Abu-Abubakr
Сообщений: 40
Репутация: 51

Сообщение # 249 | 20:09:24
Цитата (Ifgeniy)
судя по всему стоит отказаться от хостинга. Хорошо что не проплатил пакет на несколько лет)

Поздравляю, нашли выход с лабиринта)))

Добавлено (10 Мар 2013, 20:09:24)
---------------------------------------------

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

Надо дополнить это сообщение: "И забудьте о нем!"

SOFTOLAB_COM
Сообщений: 1363
Репутация: 777

Сообщение # 250 | 12:37:18
Abu-Abubakr, на данную ветку уже давно забили, приоритет у компании немного другой...

Благодарности можно оставить — в репутации.
Помощью в ЛС не занимаюсь, есть форум.
Занимаюсь сайтами на платной основе.
Шаманю на php и mysql с использованием бубна 80 lvl.
webmanya
Сообщений: 176
Репутация: 17

Сообщение # 251 | 15:46:45
Не могу поставить пароль, соответственно и пользоваться услугой, хотя деньги заплатила!
" Временно невозможно выполнить, попробуйте позже!" Насколько это временно?
Cipollino
Сообщений: 43
Репутация: 5

Сообщение # 252 | 18:49:24
webmanya, только что оплатили?

webmanya
Сообщений: 176
Репутация: 17

Сообщение # 253 | 19:23:42
Cipollino, да. Сегодня днем.
Sench6489
Сообщений: 1
Репутация: 0

Сообщение # 254 | 19:49:09
u menya est problema... ne mogu zadat porol ftp php.. "Временно невозможно выполнить, попробуйте позже.".. chto delat???
SOFTOLAB_COM
Сообщений: 1363
Репутация: 777

Сообщение # 255 | 23:50:07
Sench6489, здесь общаются на кириллице, а не транслитом.

Благодарности можно оставить — в репутации.
Помощью в ЛС не занимаюсь, есть форум.
Занимаюсь сайтами на платной основе.
Шаманю на php и mysql с использованием бубна 80 lvl.
Поиск:
Telegram
Будьте в курсе всех обновлений: подпишитесь на наш официальный Telegram-канал uCoz и задавайте вопросы в чате сообщества!