PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (6): [1] 2 3 4 5 6 »
Найдено сообщений: 81
Antosha
Отправлено: 18 Июня, 2012 - 00:11:43 • Тема: Функция для переименования загружаемого файла • Форум: Вопросы новичков
Ответов: 1 Просмотров: 139
У меня есть функция, не устраивает такой объёмный код, хотелось бы переделать
Нужно чтобы имя файла $_FILES["lala"]["name], просто трансформировалось в md5(сохраняя расширение)
Помогите пожалуйста
PHP:
скопировать код в буфер обмена
/**
* Используется md5 шифрование имени файла
* @var string $file_name имя файла
* @return string $file_name имя файла c суфиксом
*/
private function setFileSuffix( $file_name )
{
}
Antosha
Отправлено: 17 Июня, 2012 - 22:44:39 • Тема: Изменить функцию для проверки типа файла • Форум: Вопросы новичков
Ответов: 1 Просмотров: 101
mime не доверяю, нашёл в интернете такой кусочек(метод), помогите переписать метод
PHP:
скопировать код в буфер обмена
/**
* Доступные файлы для загрузки
* @var $allowType array
*/
private $allowedType = array ( "jpg" , "gif" , "jpeg" , "png" , "mp3" , "exe" , "doc" , "docx" , "xls" , "pdf" , "txt" , "rar" , "zip" ) ;
/**
* Проверяет тип файла на доступность к записи
* @param $fileName Файл который необходимо проверить
* @return boolean
*/
public function checkType( $fileName )
{
// Хотелось бы переписать данный метод,
// в силу того что регулярка не воспринимает русские символы
preg_match ( "#([\w()-_]+)\.([\w]{1,4})$#i" , $fileName , $arrayNameFiles ) ;
return in_array ( $nameEnd , $this -> allowedType ) ?
true : false ; }
Antosha
Отправлено: 08 Апреля, 2012 - 13:51:28 • Тема: е могу занести данные в третью таблицу ( связь по внешнему ключу ) • Форум: Вопросы новичков
Ответов: 11 Просмотров: 448
Заменил ( что то сам не подумал даже что в одинарных стоит ), теперь пишет:
Cannot add or update a child row: a foreign key constraint fails (`fly`.`passenger`, CONSTRAINT `passenger_ibfk_1` FOREIGN KEY (`id_client`) REFERENCES `client` (`id`) ON DELETE CASCADE ON UPDATE CASCADE)
Antosha
Отправлено: 07 Апреля, 2012 - 07:16:17 • Тема: е могу занести данные в третью таблицу ( связь по внешнему ключу ) • Форум: Вопросы новичков
Ответов: 11 Просмотров: 448
У меня есть 3 таблицы в бд: client,route,passenger
В 2 и 3 есть внешние ключи
Если во вторую получается добавить данные, то в третью нет(
Репозитарий на https://bitbucket[dot]org/TBIKC/poks[dot][dot][dot]src/b4a77f873b6b
Или для тех кому лень, вот код:
класс fly.php
Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<meta http-equiv="Content-Type" content="text/html; charset=utf8" />
<?PHP
class Fly {
private $connect ;
public function __construct( ) {
$this -> connect = new mysqli( "localhost" , "root" , "" , "fly" ) ;
if ( ! $this -> connect ) {
echo 'Ошибка соединения с базой ' ;
}
if ( ! $this -> connect -> set_charset ( "utf8" ) )
printf ( "Не могу поставить utf8: %s \n " , $this -> connect -> error ) ; }
public function saveToClient( $person , $organisation , $phone , $email , $fax , $date_route , $payment , $adress ) {
$this -> connect -> query ( "SET NAMES 'utf8';" ) ;
$date_route = date ( 'Y-m-h' ) ; $this -> connect -> query ( "INSERT INTO client VALUES(NULL,'$person ','$organisation ','$phone ','$email ','$fax ','$date_route ','$payment ','$adress ')" ) ;
return $this -> connect -> insert_id ;
}
public function saveToRouty( $id , $date , $boom , $arrival , $numFlight , $dt , $class , $note ) {
$this -> connect -> query ( "SET NAMES 'utf8';" ) ;
$this -> connect -> query ( "INSERT INTO route VALUES(NULL,'$id ','$date ','$boom ','$arrival ','$numFlight ','$dt ','$class ','$note ')" ) ;
return $this -> connect -> insert_id ;
}
public function saveToPassenger( $last_id , $Fname , $Lname , $Sname , $passport , $birthday , $note ) {
$this -> connect -> query ( "SET NAMES 'utf8';" ) ;
$this -> connect -> query ( "INSERT INTO passenger('id_client','Fname','Lname','Sname','passport','birthday','note') VALUES('$last_id ','$Fname ','$Lname ','$Sname ','$passport ','$birthday ','$note ')" ) ;
}
public function getAll( ) {
$sql = "SELECT * FROM client" ;
$result = $this -> connect -> query ( $sql ) ;
echo "<table border='1'><tr><td><font color='red'><b>id</td><td>Person</td><td>Organisation</td><td>Phone</td><td>Email</td><td>Fax</td><td>date_route</td><td>payment</td><td>adress</td><td></td></tr>" ;
while ( $row = $result -> fetch_row ( ) ) {
echo "<tr><td>" . $row [ 0 ] . "</td><td>" . $row [ 1 ] . "</td><td>" . $row [ 2 ] . "</td><td>" . $row [ 3 ] . "</td><td>" . $row [ 4 ] . "</td><td>" . $row [ 5 ] . "</td><td>" . $row [ 6 ] . "</td><td>" . $row [ 7 ] . "</td><td>" . $row [ 8 ] . "</td><td><a href='delete.php?del=$row[0] '>Удалить</a>" . "</tr><br>" ;
}
echo "</table>" ;
return $result ;
}
public function cleardata( $data ) {
return $data ;
}
public function delete( $id ) {
$sql = "DELETE FROM client WHERE id=$id " ;
$this -> connect -> query ( $sql ) ;
}
public function __destruct( ) {
}
}
$fly = new Fly( ) ;
$organisation = $fly -> clearData ( $_POST [ 'organisation' ] ) ;
$person = $fly -> clearData ( $_POST [ 'person' ] ) ;
$phone = $fly -> clearData ( $_POST [ 'phone' ] ) ;
$email = $fly -> clearData ( $_POST [ 'email' ] ) ;
$fax = $fly -> clearData ( $_POST [ 'fax' ] ) ;
$date = $fly -> clearData ( $_POST [ 'date' ] ) ;
$boom = $fly -> clearData ( $_POST [ 'boom' ] ) ;
$arrival = $fly -> clearData ( $_POST [ 'arrival' ] ) ;
$numFlight = $fly -> clearData ( $_POST [ 'numFlight' ] ) ;
$dt = $fly -> clearData ( $_POST [ 'dt' ] ) ;
$class = $fly -> clearData ( $_POST [ 'class' ] ) ;
$note = $fly -> clearData ( $_POST [ 'note' ] ) ;
$date_delivery = $fly -> clearData ( $_POST [ 'date_delivery' ] ) ;
$payment = $fly -> clearData ( $_POST [ 'payment' ] ) ;
$adress = $fly -> clearData ( $_POST [ 'adress' ] ) ;
$Fname = $fly -> clearData ( $_POST [ 'Fname' ] ) ;
$Lname = $fly -> clearData ( $_POST [ 'Lname' ] ) ;
$Sname = $fly -> clearData ( $_POST [ 'Sname' ] ) ;
$passport = $fly -> clearData ( $_POST [ 'passport' ] ) ;
$birthday = $fly -> clearData ( $_POST [ 'birthday' ] ) ;
$note = $fly -> clearData ( $_POST [ 'note' ] ) ;
$fly -> saveToPassenger ( ( $fly -> saveToRouty ( $fly -> saveToClient ( $person , $organisation , $phone , $email , $fax , $date_delivery , $payment , $adress ) , $date , $boom , $arrival , $numFlight , $dt , $class , $note ) ) , $Fname , $Lname , $Sname , $passport , $birthday , $note ) ;
//$fly->saveToPassenger($Fname,$Lname,$Sname,$passport,$birthday,$note);
header ( "Location: index.php" ) ; echo "Забронировано успешно" ;
} else {
echo $errMsg = "<center><h3><font color='red'>Эх =)</font></h3>" ;
echo '<a href="index.php"><input type="submit" value="Обратно" style="height: 40px; width: 120px"></a></center>' ;
}
база
Спойлер (Отобразить ) CODE (
SQL ):
скопировать код в буфер обмена
DROP TABLE IF EXISTS `client` ;
CREATE TABLE `client` (
`id` SERIAL,
`person` varchar( 50 ) ,
`organisation` varchar( 50 ) ,
`phone` varchar( 20 ) ,
`email` varchar( 30 ) ,
`fax` varchar( 30 ) ,
`date_route` date NOT NULL ,
`payment` text,
`adress` text,
PRIMARY KEY ( id)
) ENGINE= InnoDB DEFAULT CHARSET= utf8 COLLATE= utf8_unicode_ci;
DROP TABLE IF EXISTS `passenger` ;
CREATE TABLE `passenger` (
`id` SERIAL,
`id_client` BIGINT UNSIGNED NOT NULL ,
`Fname` varchar( 20 ) ,
`Lname` varchar( 20 ) ,
`Sname` varchar( 20 ) ,
`passport` int( 15 ) ,
`birthday` date,
`note` text,
PRIMARY KEY ( id) ,
FOREIGN KEY ( id_client) REFERENCES client( id)
ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE= InnoDB DEFAULT CHARSET= utf8 COLLATE= utf8_unicode_ci;
DROP TABLE IF EXISTS `route` ;
CREATE TABLE `route` (
`id` SERIAL,
`id_client` BIGINT UNSIGNED NOT NULL ,
`date` date,
`boom` varchar( 30 ) ,
`arrival` varchar( 30 ) ,
`numFlight` int( 30 ) ,
`timeFlight` time ,
`class` int( 11 ) ,
`note` text COLLATE utf8_unicode_ci,
PRIMARY KEY ( id) ,
FOREIGN KEY ( id_client) REFERENCES client( id)
ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE= InnoDB DEFAULT CHARSET= utf8 COLLATE= utf8_unicode_ci;
index.html
Спойлер (Отобразить )
CODE (
html ):
скопировать код в буфер обмена
<html >
<head >
<title > Бронирование авиабилетов</ title >
<meta http-equiv = "Content-Type" content = "text/html; charset=utf8" / >
<link type = "text/css" href = "css/ui-lightness/jquery-ui-1.8.18.custom.css" rel = "stylesheet" / >
<script type = "text/javascript" src = "js/jquery-1.7.1.min.js" ></ script >
<script type = "text/javascript" src = "js/jquery-ui-1.8.18.custom.min.js" ></ script >
</ head >
<body >
<center ><h2 > Заявка на бронирование авиабилетов</ h2 ></ center >
<form action = "fly.php" method = "POST" id = "form" >
<br ><b > Контактное лицо</ b ><br >
<table >
<tr >
<td > Организация<br ><input type = "text" name = "organisation" size = "25" ><br ></ td >
<td > Контактное лицо<br ><input type = "text" name = "person" size = "25" ><br ></ td >
<td > Телефон<br ><input type = "text" name = "phone" size = "12" ><br ></ td >
<td > Email<br ><input type = "text" name = "email" size = "14" ><br ></ td >
<td > Fax<br ><input type = "text" name = "fax" size = "14" ><br ></ td >
</ tr >
</ table >
<br ><b > Маршрут</ b ><br >
<table >
<tr >
<div id = "route" >
<td > Дата<br ><input type = "text" name = "date" id = "date" size = "15" ><br ><input type = "text" name = "date2" id = "date2" size = "15" ><br ><input type = "text" name = "date3" id = "date3" size = "15" ><br ></ td >
<td > Вылет(город)<br ><input type = "text" name = "boom" id = "outCity" size = "12" ><br ><input type = "text" name = "boom2" size = "12" ><br ><input type = "text" name = "boom3" size = "12" ><br ></ td >
<td > Прилёт(город)<br ><input type = "text" name = "arrival" id = "inCity" size = "12" ><br ><input type = "text" name = "arrival2" size = "12" ><br ><input type = "text" name = "arriva3l" size = "12" ><br ></ td >
<td > № Рейса<br ><input type = "text" name = "numFlight" size = "10" ><br ><input type = "text" name = "numFlight2" size = "10" ><br ><input type = "text" name = "numFlight3" size = "10" ><br ></ td >
<td > Время вылета<br ><input type = "text" name = "dt" size = "10" ><br ><input type = "text" name = "dt2" size = "10" ><br ><input type = "text" name = "dt3" size = "10" ><br ></ td >
<td > Класс<br ><input type = "text" name = "class" size = "10" ><br ><input type = "text" name = "class2" size = "10" ><br ><input type = "text" name = "class3" size = "10" ><br ></ td >
<td ><i > Дополнительные пожелания</ i ><br ><textarea name = "note" rows = "4" cols = "40" ></ textarea ></ td >
</ div >
</ tr >
</ table >
<br ><b ><p id = "passenger" > Пассажиры</ p ></ b ><br >
<table >
<tr >
<td > Фамилия<br ><input type = "text" name = "Fname" size = "13" ><br ><input type = "text" name = "Fname" size = "13" ><br ><input type = "text" name = "Fname" size = "13" ><br ></ td >
<td > Имя<br ><input type = "text" name = "Lname" size = "10" ><br ><input type = "text" name = "Lname" size = "10" ><br ><input type = "text" name = "Lname" size = "10" ><br ></ td >
<td > Отчество<br ><input type = "text" name = "Sname" size = "13" ><br ><input type = "text" name = "Sname" size = "13" ><br ><input type = "text" name = "Sname" size = "13" ><br ></ td >
<td > Серия, № паспорта<br ><input type = "text" name = "passport" size = "18" ><br ><input type = "text" name = "passport" size = "18" ><br ><input type = "text" name = "passport" size = "18" ><br ></ td >
<td > Дата рождения<br ><input type = "text" name = "birthday" id = "birthday" size = "14" ><br ><input type = "text" name = "birthday" size = "14" ><br ><input type = "text" name = "birthday" size = "14" ><br ></ td >
<td ><i > Примечания</ i ><br ><textarea name = "note" rows = "4" cols = "40" ></ textarea ></ td >
<div id = "passenger2" ></ div >
</ tr >
</ table >
<br ><b > Доставка</ b ><br >
<table >
<tr >
<td > Дата доставки<br ><input type = "text" name = "date_delivery" id = "date_delivery" size = "25" ><br ></ td >
<td > Форма оплаты<br ><input type = "text" name = "payment" size = "25" ><br ></ td >
<td > Адрес доставки<br ><input type = "text" name = "adress" size = "50" ><br ></ td >
</ tr >
</ table >
<br >
<center >
<input type = "submit" value = "Забронировать билет" style = "height: 70px; width: 220px" ><br ><br >
<a href = "clients.php" ><input type = "submit" value = "Клиенты" style = "height: 40px; width: 120px" ></ a >
</ center >
</ form >
<script type = "text/javascript" >
$("p").click(function () {
$(this).load('#passenger2');
});
$("#date").datepicker(); $("#date_delivery").datepicker();
$("#birthday").datepicker();
var outCity = [
"Шереметьево",
"Домодедово",
"Остафьево",
"Чкаловский",
"Раменское"
];
$( "#outCity" ).autocomplete({source: outCity});
var inCity = [
"Сочи",
"Белград",
"Лондон",
"Париж",
"Осло",
"Дели"
];
$( "#inCity" ).autocomplete({source: inCity});
</ script >
</ body >
</ html >
Страниц (6): [1] 2 3 4 5 6 »
Powered by ExBB FM 1.0 RC1. InvisionExBB