Ошибка в операции вставки базы данных в переполнение стека

Я делаю операцию вставки в PHP с использованием функций. Ошибка кажется очень тривиальной, но я не могу определить ее источник.

<?php

class DB_Insert{

public function insertLec($lecId,$csId,$date,$time,$update,$export)
{
$con=mysql_connect("localhost","root","");
mysql_select_db("attenmandb");
$retval=mysql_query("INSERT INTO lecturetb(LecID, CSID, Date, Time, Updation, Export) VALUES($lecId,'$csId','$date','$time','$update','$export')",$con);
if(! $retval)
{
echo 'ERROR!';
}
else
{
echo 'Success';
}
}

$this->insertLec(1,'CST5','27-9-2014','11.30 to 12.30','No','No');
}

?>

Ошибка выглядит так:

Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in DB_Insert.php on line 20

-2

Решение

$this->insertLec(1,'CST5','27-9-2014','11.30 to 12.30','No','No');

Это просто плавающий в вашем классе. Это должно быть в коде, который вызывает ваш класс.

$insert = new DB_Insert();
$insert->insertLec(1,'CST5','27-9-2014','11.30 to 12.30','No','No');

Пожалуйста, не используйте mysql_* функции в новом коде. Они больше не поддерживаются и официально устарели. Увидеть красная коробка? Узнать о готовые заявления вместо этого и использовать PDO или же MySQLiЭта статья поможет вам решить, какой. Если вы выбираете PDO, вот хороший урок.

Вы также широко открыты для Инъекции SQL

4

Другие решения

У вас есть последовательный код с определением вашего класса, но не внутри функции. Вы должны переместить этот вызов функции за пределы класса:

} // end of class definition
$dbInsert= new DB_Insert();
$dbInsert->insertLec(1,'CST5','27-9-2014','11.30 to 12.30','No','No');

// отредактировано, чтобы подтвердить предыдущий ответ как правильный!
Да, как сказал Джон!

0

По вопросам рекламы [email protected]