Здравствуйте, я только начал постигать азы PHP и у меня возникла проблема. Мне нужно написать скрипт, который будет передавать данные формы в базу данных. Вот код: Код (PHP): <body> <p>Регистрация новых участников гильдии:</p> <p>Никнейм:</p> <form id="form1" name="form1" method="post" action=""> <label> <input type="text" name="nickname" id="textfield" /> </label> </form> <p>Уровень:</p> <form id="form2" name="form2" method="post" action=""> <label> <input type="text" name="level" id="textfield2"/> </label> </form> <p>Класс:</p> <form id="form3" name="form3" method="post" action=""> <label> <input type="text" name="class" id="textfield3" /> </label> </form> <p>Ранг в гильдии:</p> <form id="form4" name="form4" method="post" action=""> <label> <input type="text" name="rang" id="textfield4" /> </label> </form> <form id="form5" name="form5" method="post" action="keypress"> <label> <input type="submit" name="button" id="button" value="добавить" /> </label> </form> <?php $dbname="sostav"; $user="root"; $password=""; $dbhost="localhost" $link=mysql_connect($dbhost,$user,$password);//вот линия 44 mysql_select_db($dbname,$link); function keypress() {$query="insert into sostav(nickname,level,class,rang) values($_REQUEST['form1] $_REQUEST['form2'] $_REQUEST['form3'] $_REQUEST['form4'])"; mysql_query($query,$link) } ?> </body> Но при обработке браузером кода появляется ошибка syntax error, unexpected T_VARIABLE on line 44(линию в коде отметил). Объясните пожалуйста причину этой ошибки, и укажите на какие-либо другие, если они есть.Заранее спасибо.
Спасибо, глупая ошибка. теперь вот такая проблема возникла Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xampp\htdocs\myproject\registration.php on line 47
Код (PHP): <? $query="insert into sostav(nickname,level,class,rang) values({$_REQUEST['form1']}, {$_REQUEST['form2']}, {$_REQUEST['form3']}, {$_REQUEST['form4']})"; но оставлять так тоже не стоит. Так как можно получить sql-инъекцию. Поэтому надо ещё использовать mysql_real_escape_string, а перед составлением запроса проверить данные на соответстие тому, что должен был ввести пользователь. и после mysql_query($query,$link) тоже нужна ;
Вроде как тоже в тему, поможите? суть вопроса: нужно в нижеприведенной строчке слово bracer заменить значением переменной $slot Код (PHP): <div align=center><strong><? echo $target_user->bracer[0][name]?></strong></div><br> Обкладывание кавычками и точками не помогло, простая замена bracer на $slot - тоже... как правильно? Это ответ на вариант с точками и кавычками: Код (PHP): Parse error: syntax error, unexpected '.', expecting T_STRING or T_VARIABLE or '{' or '$' in /home/u28995/lebarge-cityru/www/voc/designes/default/item_show.php on line 11 Это ответ на замену brace на $slot: Код (PHP): Fatal error: Cannot use string offset as an array in /home/u28995/lebarge-cityru/www/voc/designes/default/item_show.php on line 11 $slot="bracer" - задается ссылкой из другого фрейма $targe_user->bracer[0][name] - тоже не пустой, т.е. самая первая приведенная строчка работает. Но нужна универсальность, чтобы она работала с передаваемым через $slot аргументом массива
Кхм... второй вариант видится более лаконичным и, чего уж скрывать - более правильным. Спасибо, Сергей! Оба варианта - рабочие
доброго времени суток! у меня та же ошибка: Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/kobrakz/public_html/private.php on line 34 лайн 34: $res_login = mysql_query("select login from users where login='$_SESSION['userid']'"); выше $_SESSION['userid'] = $_POST['userid']; (данные получаю из другой формы) в чем может быть дело?
Код (PHP): <center>'Spisok file servers'</center> <?php include("createdb.php"); function echoservers (ip){ $sql=SELECT*FROM servers WHERE ip='$ip'; $result=sqlite_query($db,$sql) echo "<p> Nazvanie Servera: ", $name, "</p>"; // название сервера echo "<p> IP-adress: ", $ip, "</p>"; // ип сервера echo "<p> Adminstrator: ", $master, "</p>"; // ник хозяина сервера echo "<p> Size: ", $size , " gb</p>"; // объем /*кароче тут рейтинг типо будет*/ echo "<p> Opisanie: ", $desc, "</p>"; // описание echo "<p> Read-Only ", $write, "</p>"; // чтение (да\нет) echo "<p> Dostup ", $share , "</p>"; //доступ echo "<p> Full opisanie: ", $fulldesc , "</p>"; // полное описание } ?> [url="edit.php"]Edit info[/url] я полный нуб но очень нужно разобраться почему этот код выдает ошибку: Parse error: syntax error, unexpected ')', expecting '&' or T_VARIABLE in /pub/web/givi/fileserv.php on line 5
А кто за вас будет строки в кавычки заключать??? Код (PHP): $sql="SELECT*FROM servers WHERE ip='$ip'"; $result=sqlite_query($db,$sql); Что такое ip??? Если переменная, то $ip
Код (PHP): </table> <input name="ok" type="hidden" value="ok"> <input name="start" type="hidden" value="ok"> <br /> <input type="submit" value=" »" class=b onclick="if(ss){if(document.getElementById('ig').checked==false){alert(' , ');return false;}}"> </form> HTML; die; } if(!isset($_POST['start'])) st(); //линия 245!!! IF (isset($_POST['autobackup'])) { $get_mixdate = date ("YmdHis"); $dir_bkp = 'backupfiles_'.$get_mixdate; $bacupfiles = array( 'index.php', '.htaccess', 'engine/engine.php', ); FOR ($x = 0; $x < count($bacupfiles); $x++) { Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/a1680670/public_html/dle_photo.php on line 245 Вот в чем может быть дело?
<? final class protection { static public $_get; static public $_post; static public post_decode(){ foreach($_POST as $key=>$value){ $key=htmlspecialchars($key); if(is_array($value)){ $value=$value; foreach($value as $sub_key=>$sub_value){ $sub_key=htmlspecialchars($sub_key); if(is_string($sub_value)){ $sub_value=htmlspecialchars($sub_value); }elseif(is_int($sub_value)){ $sub_value=(int)$sub_value; } self::$_post[$key][$sub_key]=$sub_value; } }elseif(is_string($value)){ $value=htmlspecialchars($value); self::$_post[$key]=$value; }elseif(is_int($value)){ $value=(int)$value; self::$_post[$key]=$value; } } $_POST=array(); } static public get_decode(){ foreach($_GET as $key=>$value){ $key=htmlspecialchars($key); if(is_string($value)){ $value=htmlspecialchars($value); self::$_get[$key]=$value; }elseif(is_int($value)){ $value=(int)$value; self::$_get[$key]=$value; } } $_GET=array(); } } ?> Че за ошибка Parse error: syntax error, unexpected T_CLASS, expecting T_STRING in C:\SERVER\home\mirv.ru\defen.php on line 2
U menja problema Parse error: syntax error, unexpected T_VARIABLE in U:\home\test1.ru\www\result_mysqlphp.php on line 78 Код (PHP): <html> <head> <title></title> </head> <body> <?php if (isset($_POST['company'])) { $company = $_POST['company']; } if (isset($_POST['profile'])) { $profile = $_POST['profile']; } if (isset($_POST['profile2'])) { $profile2 = $_POST['profile2']; } if (isset($_POST['name1'])) { $name1 = $_POST['name1']; } if (isset($_POST['name2'])) { $name2 = $_POST['name2']; } if (isset($_POST['job'])) { $job = $_POST['job']; } if (isset($_POST['job2'])) { $job2 = $_POST['job2']; } if (isset($_POST['address'])) { $address = $_POST['address']; } if (isset($_POST['address2'])) { $address2 = $_POST['address2']; } if (isset($_POST['phone'])) { $phone = $_POST['phone']; } if (isset($_POST['phone2'])) { $phone2 = $_POST['phone2']; } if (isset($_POST['email'])) { $email = $_POST['email']; } if (isset($_POST['www'])) { $www = $_POST['www']; } include "db1.php" $result2 = mysql_query ("INSERT INTO vizitka_client (company, profile, profile2, name1,name2,job,job2,address,address2,phone,phone2,email,www) VALUES ('$company','$profile','$profile2','$name1','$name2','$job', '$job2','$address','$address2','$phone','$phone2','$email','www')"); if ($result2 == 'true') { echo "Infa dobavlena uspewa"; } else { echo "infa ne dobavlena"; } ?> </body> </html> Uze zaputalsa ja noob v etom dele no o4en nuzna....
строка 75 Код (PHP): include "db1.php" закрывать операторы не забываем, да? с такой ошибкой смотри предыдущую строку всегда. P.S. Код (PHP): # $result2 = mysql_query ("INSERT INTO vizitka_client (company, profile, # profile2, name1,name2,job,job2,address,address2,phone,phone2,email,www) # VALUES ('$company','$profile','$profile2','$name1','$name2','$job', # '$job2','$address','$address2','$phone','$phone2','$email','www')"); '$email','www' - могу предположить, что пропущено $ у переменной www. P.P.S. И почитай статьи на тему защиты, ломануть 5 секунд этот скрипт.
kas1e sps razobralsa da ti bil prav ja tam propustil $ v 86 storke www. dlaee mne nuzno bilo zdelat 4tob skript pozicionirovanija dobavalsa v bazu teper kod vigledit tak Код (PHP): include "db1.php"; $result2 = mysql_query ("INSERT INTO vizitka_client (company, profile, profile2, name1,name2,job,job2,address,address2,phone,phone2,email,www,script_pos) VALUES ('$company','$profile','$profile2','$name1','$name2','$job', '$job2','$address','$address2','$phone','$phone2','$email','$www','$script_pos_k')"); $result = mysql_query("SELECT script_pos FROM vizitka_def", $db); $myrow = mysql_fetch_array($result); echo $myrow ["script_pos"]; $result = $script_pos_k ; echo $myrow ["script_pos_k"]; if ($result2 == 'true') { echo "Infa dobavlena uspew"; } else { echo "infa ne dobavlena"; if ($script_pos_k == 'true') { echo "<br>Infa pozicionirovanija dobavlena uspew"; } else { echo "<br>Infa pozicionirovanija ne dobavlena"; } ?> } vso dobovlaet vse danie a dobovlat sam skript pozocionirovanija ne ho4ew... pri4om nuzno sdelat tak 4tob on izmenonij dobovlal pomagite sdelat plz...