TAKOY
Постоялец
- Регистрация
- 24 Фев 2008
- Сообщения
- 84
- Реакции
- 5
- Автор темы
- #1
Всем привет, возникла такая проблема, поставил к себе на сайт форму обратной связи ( чесно не помню где взял ), она выдает пару ошибок, но письма приходят, если кто знает , что в строчках в которых ошибки выдает нужно прописать или чтото изменить ответьте пожалуйста!
вот страница сайта где установлена форма
вот файл на который ругается и строчка 2 и 103 ( выделил цветом )
<?
$action = $_GET['action'];
$s = file("filer/form.set");
$count = count($s);
list($name,$type,$error,$sub,$before,$after,$email,$min)=explode("<<>>", $s[0]);
$sub = str_replace("
","\r\n",$sub);
$before = str_replace('||','"',$before);
$after = str_replace('||','"',$after);
$names_text = $name;
$type_text =$type;
$zvezda_text=$error;
$sub_text =$sub;
$rrt = explode("^^^", $names_text);
$r = explode("^^^", $type_text);
$rt = explode("^^^", $zvezda_text);
$rrtt = explode("^^^", $sub_text);
if($names_text == "") { exit("no fields"); }
$rr = count($rrt);
if($action == " ") { echo "<h1>".$before."</h1>"; }
if($action == "ok") { echo "<h1><font color=red><b>".$after."</b></font></h1>"; }
echo"<br><form action=send.php method=POST>";
echo "<table border=0 width=100% align=center class=form><tr><td width=20%></td><td></td></tr>";
$n_in = 0;
$n_ch = 0;
$n_tx=0;
$n_ra =0;
for($i=0;$i<$rr;$i++)
{
if($rt[$i] !="") {$zv ="<font color=red><small><sup>*</sup></small></font>";}
else { $zv ="";}
if($r[$i] == 0) { echo"<tr><td>".$rrt[$i].$zv."</td><td><input type=text name=input[".$i."] value='' style='width:100%'></td></tr>
<input type=hidden name=inchek[".$i."] value='".$rt[$i]."'>"; }
if($r[$i] == 1) { echo"<tr><td valign=top>".$rrt[$i].$zv."</td><td><textarea name=text[".$i."] style='width:100%' rows=4></textarea></td></tr>
<input type=hidden name=txchek[".$i."] value='".$rt[$i]."'>"; }
if($r[$i] == 2)
{
$opt = explode("\r\n", $rrtt[$i]);
$count_opt = count($opt);
echo"<tr><td>".$rrt[$i].$zv."</td><td><select name=select[".$i."] style='width:100%'>";
for($o=0;$o<$count_opt;$o++)
{
if($o == 0) {$ggg = "selected";}
else {$ggg="";}
echo "<option value='".$opt[$o]."' ".$ggg.">".$opt[$o];
}
echo"</select></td></tr><tr><td colspan=2> </td></tr><input type=hidden name=selchek[".$i."] value='".$rt[$i]."'>";
}
if($r[$i] == 3)
{
$ch = explode("\r\n", $rrtt[$i]);
$count_ch = count($ch);
echo"<tr><td valign=top>".$rrt[$i].$zv."</td><td>";
for($h=0;$h<$count_ch;$h++)
{
echo "
<input type=checkbox name=chek".$n_ch."[".$h."] value='".$ch[$h]."'> ".$ch[$h]."<br>";
}
echo"</td></tr><tr><td colspan=2> </td></tr><input type=hidden name=cg[".$n_ch."] value=".$h."><input type=hidden name=chchek[".$i."] value='".$rt[$i]."'>";
$n_ch++;
}
if($r[$i] == 4)
{
$ra = explode("\r\n", $rrtt[$i]);
$count_ra = count($ra);
echo"<tr><td valign=top>".$rrt[$i].$zv."</td><td>";
for($o=0;$o<$count_ra;$o++)
{
if($o == 0) {$gggfh = "checked";}
else {$gggfh="";}
echo "<input type=radio name=radio[".$i."] value='".$ra[$o]."' ".$gggfh.">".$ra[$o]."<br>";
}
echo"</td></tr><tr><td colspan=2> </td></tr><input type=hidden name=rachek[".$i."] value='".$rt[$i]."'>";
}
if($r[$i] == 5) { echo"<tr><td>".$rrt[$i].$zv."</td><td><input type=text name=em[".$i."] value='' style='width:100%'></td></tr>
<input type=hidden name=emchek[".$i."] value='".$rt[$i]."'>"; }
}
$er_ok=0;
for($e=0;$e<count($rt);$e++)
{
if($rt[$e] !="") { $er_ok++;}
}
echo "<tr><td colspan=2 align=left><br>
<font color=red><small><sup>*</sup></small></font> Поля обязательные для заполнения <input type=submit value='Отправить' > <input type=reset value='Очистить'></td></tr>";
echo "</table>";
echo "<input type=hidden name=i value='".$i."'>";
echo "<input type=hidden name=h value='".$h."'>";
echo "<input type=hidden name=error value='".$er_ok."'>";
echo"</form>";
?>
я вот целый день сегодня разбирался, поставил на другой сайт, на другом хосте , вообще ничего не работает, маленькая строчка вверху вещает, что типа ненайден файл на хосте, поигрался с правами доступа на папки и заработало все отлично ( на этом сайте движок zebrum_lite_202 ) и письма доходят. начал опять первый сайт ковырять , вернее эту форму обратной связи - все по старому, зашел на сайт создателя скрипта, купил самый последний скрипт формы обратной связи за 50 руб. , кстати вот он, залил его на хост вместо старого, тоже самое. написал на форум поддержки вот переписка--
вот, куда я ставлю скрипт этой формы стоит новая версия zebrum_lite_203, я вроде нашел конфигурационный файл, это оказался index.php, вот что в нем есть
люди знающие прошу поможите мне а)))
заранее спасибо
вот страница сайта где установлена форма
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.
вот файл на который ругается и строчка 2 и 103 ( выделил цветом )
<?
$action = $_GET['action'];
$s = file("filer/form.set");
$count = count($s);
list($name,$type,$error,$sub,$before,$after,$email,$min)=explode("<<>>", $s[0]);
$sub = str_replace("
","\r\n",$sub);
$before = str_replace('||','"',$before);
$after = str_replace('||','"',$after);
$names_text = $name;
$type_text =$type;
$zvezda_text=$error;
$sub_text =$sub;
$rrt = explode("^^^", $names_text);
$r = explode("^^^", $type_text);
$rt = explode("^^^", $zvezda_text);
$rrtt = explode("^^^", $sub_text);
if($names_text == "") { exit("no fields"); }
$rr = count($rrt);
if($action == " ") { echo "<h1>".$before."</h1>"; }
if($action == "ok") { echo "<h1><font color=red><b>".$after."</b></font></h1>"; }
echo"<br><form action=send.php method=POST>";
echo "<table border=0 width=100% align=center class=form><tr><td width=20%></td><td></td></tr>";
$n_in = 0;
$n_ch = 0;
$n_tx=0;
$n_ra =0;
for($i=0;$i<$rr;$i++)
{
if($rt[$i] !="") {$zv ="<font color=red><small><sup>*</sup></small></font>";}
else { $zv ="";}
if($r[$i] == 0) { echo"<tr><td>".$rrt[$i].$zv."</td><td><input type=text name=input[".$i."] value='' style='width:100%'></td></tr>
<input type=hidden name=inchek[".$i."] value='".$rt[$i]."'>"; }
if($r[$i] == 1) { echo"<tr><td valign=top>".$rrt[$i].$zv."</td><td><textarea name=text[".$i."] style='width:100%' rows=4></textarea></td></tr>
<input type=hidden name=txchek[".$i."] value='".$rt[$i]."'>"; }
if($r[$i] == 2)
{
$opt = explode("\r\n", $rrtt[$i]);
$count_opt = count($opt);
echo"<tr><td>".$rrt[$i].$zv."</td><td><select name=select[".$i."] style='width:100%'>";
for($o=0;$o<$count_opt;$o++)
{
if($o == 0) {$ggg = "selected";}
else {$ggg="";}
echo "<option value='".$opt[$o]."' ".$ggg.">".$opt[$o];
}
echo"</select></td></tr><tr><td colspan=2> </td></tr><input type=hidden name=selchek[".$i."] value='".$rt[$i]."'>";
}
if($r[$i] == 3)
{
$ch = explode("\r\n", $rrtt[$i]);
$count_ch = count($ch);
echo"<tr><td valign=top>".$rrt[$i].$zv."</td><td>";
for($h=0;$h<$count_ch;$h++)
{
echo "
<input type=checkbox name=chek".$n_ch."[".$h."] value='".$ch[$h]."'> ".$ch[$h]."<br>";
}
echo"</td></tr><tr><td colspan=2> </td></tr><input type=hidden name=cg[".$n_ch."] value=".$h."><input type=hidden name=chchek[".$i."] value='".$rt[$i]."'>";
$n_ch++;
}
if($r[$i] == 4)
{
$ra = explode("\r\n", $rrtt[$i]);
$count_ra = count($ra);
echo"<tr><td valign=top>".$rrt[$i].$zv."</td><td>";
for($o=0;$o<$count_ra;$o++)
{
if($o == 0) {$gggfh = "checked";}
else {$gggfh="";}
echo "<input type=radio name=radio[".$i."] value='".$ra[$o]."' ".$gggfh.">".$ra[$o]."<br>";
}
echo"</td></tr><tr><td colspan=2> </td></tr><input type=hidden name=rachek[".$i."] value='".$rt[$i]."'>";
}
if($r[$i] == 5) { echo"<tr><td>".$rrt[$i].$zv."</td><td><input type=text name=em[".$i."] value='' style='width:100%'></td></tr>
<input type=hidden name=emchek[".$i."] value='".$rt[$i]."'>"; }
}
$er_ok=0;
for($e=0;$e<count($rt);$e++)
{
if($rt[$e] !="") { $er_ok++;}
}
echo "<tr><td colspan=2 align=left><br>
<font color=red><small><sup>*</sup></small></font> Поля обязательные для заполнения <input type=submit value='Отправить' > <input type=reset value='Очистить'></td></tr>";
echo "</table>";
echo "<input type=hidden name=i value='".$i."'>";
echo "<input type=hidden name=h value='".$h."'>";
echo "<input type=hidden name=error value='".$er_ok."'>";
echo"</form>";
?>
я вот целый день сегодня разбирался, поставил на другой сайт, на другом хосте , вообще ничего не работает, маленькая строчка вверху вещает, что типа ненайден файл на хосте, поигрался с правами доступа на папки и заработало все отлично ( на этом сайте движок zebrum_lite_202 ) и письма доходят. начал опять первый сайт ковырять , вернее эту форму обратной связи - все по старому, зашел на сайт создателя скрипта, купил самый последний скрипт формы обратной связи за 50 руб. , кстати вот он, залил его на хост вместо старого, тоже самое. написал на форум поддержки вот переписка--
Здравствуйте, только купил у вас конструктор формы обратной связи, залил на хост ( вот адрес странички с формой Для просмотра ссылки Войдиили Зарегистрируйся ) и сразу как заходиш на эту страничку вверху выдаёт ошибку --- Notice: Undefined index: action in /home/ukrrec/public_html/ogorodic.org.ua/form3-20100221173610/form/form.php on line 2 и в самом низу тоже ошибка ---- Notice: Undefined variable: h in /home/ukrrec/public_html/ogorodic.org.ua/form3-20100221173610/form/form.php on line 154 .
И после того как нажал на кнопку отправить, когда идет процес отправки тоже появляются 2 ошибки , но я не успеваю их запомнить, в конце первой видно --- on line 30
письма доходят, но что это за ошибки не знаю. помогите пожалуйста решить проблему. Распишите подробнее, вплоть до того --- на какие папки и файлы нужно выставить какие права и в какой строчке и в каком файле что дописать или изменить.
Заранее спасибо.
Ответить
автор: Plahov (21.02.2010 в 18:49) to: fraerok (21.02.2010 в 18:10)
Отключите Notice.
Изменить уровень вывода ошибок можно в файле php.ini (конфигурационный файл PHP).
Для этого необходимо найти в файле php.ini параметр error_reporting и установить значение E_ERROR. Например вот так:
error_reporting = E_ERROR
вот, куда я ставлю скрипт этой формы стоит новая версия zebrum_lite_203, я вроде нашел конфигурационный файл, это оказался index.php, вот что в нем есть
и вот в том месте что я выделил цветом сделал так error_reporting(E_ERROR);, но ничего не изменилось.<?php
/**
* @version $Id: index.php 10 2009-10-08 20:25:03Z lks $
*/
/**
* Раскомментируйте следующие строчки для отображения ошибок. После устранения
* ошибок не забудьте закоментировать их обратно
*/
//error_reporting(E_ALL);
//ini_set('display_errors', 1);
header('Content-Type: text/html; charset=utf-8');
require_once dirname(__FILE__) . '/zengine/bootstrap.php';
/**
* Запрос страницы
*/
if (! defined('ZENGINE')) {
define('ZENGINE', $_SERVER['REQUEST_URI']);
}
/**
* Инициализация движка
*/
zengine::run(current(explode('?', ZENGINE)));
люди знающие прошу поможите мне а)))
заранее спасибо