Difference between revisions of "Php u2v2"

From Ilianko
Line 39: Line 39:
  
 
10. Създаване на приложение за избиране на оптимално изображение (размер/ качество)
 
10. Създаване на приложение за избиране на оптимално изображение (размер/ качество)
 +
<code></pre>
 +
-- phpMyAdmin SQL Dump
  
<code><pre>
 
-- phpMyAdmin SQL Dump
 
 
-- version 3.4.11.1deb2+deb7u2
 
-- version 3.4.11.1deb2+deb7u2
 
-- http://www.phpmyadmin.net
 
-- http://www.phpmyadmin.net
 
--
 
--
 
-- Host: localhost
 
-- Host: localhost
-- Generation Time: Nov 13, 2015 at 11:52 AM
+
-- Generation Time: Nov 13, 2015 at 11:55 AM
 
-- Server version: 5.5.46
 
-- Server version: 5.5.46
 
-- PHP Version: 5.4.45-0+deb7u2
 
-- PHP Version: 5.4.45-0+deb7u2
Line 56: Line 56:
 
-- Database: `images`
 
-- Database: `images`
 
--
 
--
 +
 +
-- --------------------------------------------------------
 +
 +
--
 +
-- Table structure for table `images`
 +
--
 +
 +
CREATE TABLE IF NOT EXISTS `images` (
 +
  `id_image` int(11) NOT NULL AUTO_INCREMENT,
 +
  `filename` varchar(100) NOT NULL,
 +
  `status` int(11) NOT NULL,
 +
  PRIMARY KEY (`id_image`)
 +
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
 +
 +
-- --------------------------------------------------------
 +
 +
--
 +
-- Table structure for table `users`
 +
--
 +
 +
CREATE TABLE IF NOT EXISTS `users` (
 +
  `id_user` int(11) NOT NULL AUTO_INCREMENT,
 +
  `name` varchar(100) NOT NULL,
 +
  `password` varchar(40) NOT NULL,
 +
  `status` int(11) NOT NULL,
 +
  PRIMARY KEY (`id_user`)
 +
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
  
 
-- --------------------------------------------------------
 
-- --------------------------------------------------------

Revision as of 09:39, 13 November 2015

1. Инсталиране на mysql-server, phpmyadmin

2. Създаване на таблица users с полета:

  • id_user int autoincrement primary
  • userName - VARCHAR 100
  • password - VARCHAR 40
  • status

3. Създаване на форма за Login

  • <input type=password name=pass>
  • <input type=text name=user>

4. Създаване на скрипт за проверка на потребителя

  • нормализация
  • валидация
  • връзка с базата данни
$db = new mysqli(....);
$result = $db->query( "SELECT `id_user` FROM users 
                           WHERE  user='xxx' AND password = SHA1('password')")

5. Стартиране на сесия и запомняне на статуса на потребителя

  • session_start()
  • $_SESSION['user'] = ...
  • $_SESSION['logged'] = ...

6. Автоматично преконвертиране на изображенията и записване с определено качество

$img  = new Imagick();
$img->readImage('images/im3.tif');
$img->setImageCompression(Imagick::COMPRESSION_JPEG);
$img->setImageCompressionQuality(80);
$img->writeImage('images/im3.jpg');

7. създаване на функция, която да генерира изображения с качество от 5 до 95 през 10

8. Създаване на таблици images

9 Създаване votes

10. Създаване на приложение за избиране на оптимално изображение (размер/ качество)

-- phpMyAdmin SQL Dump

-- version 3.4.11.1deb2+deb7u2 -- http://www.phpmyadmin.net -- -- Host: localhost -- Generation Time: Nov 13, 2015 at 11:55 AM -- Server version: 5.5.46 -- PHP Version: 5.4.45-0+deb7u2

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00";

-- -- Database: `images` --

-- --------------------------------------------------------

-- -- Table structure for table `images` --

CREATE TABLE IF NOT EXISTS `images` (

 `id_image` int(11) NOT NULL AUTO_INCREMENT,
 `filename` varchar(100) NOT NULL,
 `status` int(11) NOT NULL,
 PRIMARY KEY (`id_image`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

-- -- Table structure for table `users` --

CREATE TABLE IF NOT EXISTS `users` (

 `id_user` int(11) NOT NULL AUTO_INCREMENT,
 `name` varchar(100) NOT NULL,
 `password` varchar(40) NOT NULL,
 `status` int(11) NOT NULL,
 PRIMARY KEY (`id_user`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

-- -- Table structure for table `votes` --

CREATE TABLE IF NOT EXISTS `votes` (

 `id_image` int(11) NOT NULL,
 `id_user` int(11) NOT NULL,
 `quality` int(11) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1;