Kselax.ru

Hacker Kselax — the best hacker in the world

Menu
  • Блог
  • Контакты
  • wp plugin генератор
  • Русский
    • Русский
    • English
Menu

Шпора по php

.htaccess файл

Показать »

Задание кодировки utf-8

1
AddDefaultCharset UTF-8

Задание кодировки cp1251

1
AddDefaultCharset WINDOWS-1251

Подключение БД в php

Показать »

код подключения к БД

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
//настройки базы данных
$dbHost='localhost';// чаще всего это так, но иногда требуется прописать ip адрес базы данных
$dbName='expert';// название вашей базы
$dbUser='root';// пользователь базы данных
$dbPass='';// пароль пользователя
 
 
//соединение с БД
$db = mysql_connect($dbHost,$dbUser,$dbPass);//соединяемся с БД
mysql_select_db($dbName,$db);//выбираем БД
mysql_set_charset('utf8');//устанавливаем кодировку
?>

Запросы к БД

Показать »

SELECT использование псевдонимов

1
$sql="SELECT user.id,(game.id)AS id_game FROM game, user WHERE user.name = game.name ORDER BY game.id DESC LIMIT 10";

 

Добавить в таблицу expert данные INSERT

1
2
3
4
5
6
7
8
9
10
11
12
$sql = "INSERT INTO expert (fam, name, sename, tell, email)
VALUES('".$_POST['fam']."', '".$_POST['name']."', '".$_POST['sename']."', '".$_POST['tell']."', '".$_POST['email']."')";
echo "sql=$sql<br>";
//добавление данных
if(!mysql_query($sql))
{
echo "<center><p><b>Ошибка при добавлении данных!".mysql_error()."</b></p></center>";}
else
{
echo '<center><p><b>Данные успешно добавлены!</b></p></center>';
//делаем переадресацию и в сесию добавляем айди пользователя
}

Выбрать из таблицы expert строки SELECT

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//проверяем существования email в БД
echo "проверка mail<br>";
$sql="SELECT * FROM `expert` WHERE `email` = '".$_POST['email']."'";
echo "sql=$sql<br>";
$res=mysql_query($sql);
echo mysql_num_rows($res)."<br>";
if(mysql_num_rows($res)>0)
{
echo "email: ".$_POST['email']." уже существует в БД<br>";
}
else
{
//добавляем данные в БД
echo "Добавляем данные<br>";
}

SELECT с сортировкой в обратном порядке по id

1
$sql="SELECT * FROM `criterion` ORDER BY `id` DESC";

Обновить строку в таблице expert UPDATE

1
2
3
4
5
6
$sql = "UPDATE `expert` SET fam='".mysql_real_escape_string($_POST['fam'])."', name='".mysql_real_escape_string($_POST['name'])."', sename='".mysql_real_escape_string($_POST['sename'])."', tell='".mysql_real_escape_string($_POST['tell'])."', email='".mysql_real_escape_string($_POST['email'])."', pass='".mysql_real_escape_string($_POST['pass'])."' WHERE `id`=".$_POST['id'];
echo "sql=$sql<br>";
if(!mysql_query($sql))
{
echo "error = ".mysql_error()."<br>";
}

Удалить строку из таблицы expert DELETE

1
2
3
4
5
6
7
8
9
10
$sql="DELETE FROM `expert` WHERE `id`=".$_GET['id'];
if(!mysql_query($sql))
{
echo "<p style='color:red'>error: ".mysql_error()."</p>";
}
else
{
header("Location: admin.php");
exit(1);//убедитесь что последующий код не выполнится
}

Делаем запрос на выборку в две таблицы SELECT, запрос вообще простой, я для примера приведу, просле FROM идет название таблиц criterion и rank, а дальше идут условия, где id_expert из таблицы rank= переменной сесии (id_experta) и rank.id_criterion=criterion.id из таблицы criterion, то есть берется первая строка из таблицы criterion и затем с условиям выбирается строка из таблицы rank, если находится  таблице ранк строка удовлетворяющая условию, то сохраняется результат, выбираются все строки с двух таблиц. И так продолжается пока не закончатся строки в criterion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$sql="SELECT * FROM criterion, rank WHERE rank.id_expert = ".$_SESSION['user']." AND rank.id_criterion = criterion.id ORDER BY criterion.id DESC";
echo "sql=$sql<br>";
if(!($res=mysql_query($sql)))
{
echo mysql_error()."<br>";
}
else
{
echo "удачно<br>";
$row=mysql_fetch_array($res);
echo "<pre>";
print_r($row);
echo "</pre>";
$row=mysql_fetch_array($res);
echo "<pre>";
print_r($row);
echo "</pre>";
$row=mysql_fetch_array($res);
echo "<pre>";
print_r($row);
echo "</pre>";
}

php переадресация

1
2
header("Location: aut.php");
exit(1);//убедитесь что последующий код не выполнится

Переадресация на страницу с которой пришли

1
2
header("Location: ".$_SERVER['HTTP_REFERER']);
exit(1);//убедитесь что последующий код не выполнится

mysql_fetch_array — возвращает данные в виде массива

Показать »

можно вывести массив с помощью print_r и посмотреть что там внутри

1
2
3
4
5
6
7
8
9
10
11
12
$sql="SELECT * FROM `expert` WHERE `email` = '".mysql_real_escape_string(trim($_POST['email']))."'";
$res=mysql_query($sql);
$row = mysql_fetch_array($res);
if(mysql_num_rows($res)==0||$row['pass']!=md5($_POST['pass']))//количество строк
{
echo "<p style='color:red'>Не верен email или пароль</p>";
}
else
{
//делаем авторизацию и переадресовываем пользователя на страницу
echo "<p style='color:green'>Авторизация пользователя прошла успешно!</p>";
}

 

php сесии $_SESSION

Показать »

небольшой код по созданию и удалению сесий

1
2
3
4
session_start();
unset($_SESSION['name']); // или $_SESSION = array() для очистки всех данных сессии
session_destroy();
header('Location: index.php');

Если у вас после session_destroy сразу идет редирект то удалять данные из глобальной переменной $_SESSION не обязательно, данные в ней будут доступны только на текущем запросе.

PHP узнать ip и user-Agent

Показать »

1
2
3
4
5
6
7
8
<?php
$ip=$_SERVER['REMOTE_ADDR'];
echo "ip= ".$ip."<br>";
$br=$_SERVER['HTTP_USER_AGENT'];
echo "браузер= ".$br."<br>";
//возвращает адресс страницы с которой перешли
echo header("Location: ".$_SERVER['HTTP_REFERER']);   
?>

php date() и time()

Показать »

1
2
3
4
$data=time();
echo date('d.m.Y h:i:s',$data)."<br>";
$data+=60*3;
echo date('d.m.Y h:i:s',$data)."<br>";

Отправить Post заропс на php curl

Показать »

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
send_post("http://kselax.ru","name=a&fam=3");
//функция отправляет пост запрос
function send_post($url_bot,$post)
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url_bot);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
curl_setopt($curl, CURLOPT_USERAGENT, 'Opera 10.00');
$res = curl_exec($curl);
curl_close($curl);
return $res;
}

Вывод даты по дням недели

Показать »

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php
$month=11;
$year=2015;
$result=array();
$result1=array();
 
$times  = mktime(0,0,0,$month,1,$year);
 
$day=60*60*24;
while($month== date("m",$times) ){
$result[date("D",($times))][]= date("d",$times);
$times+=$day;
$count++;
}
$result1[1]=$result["Mon"];
$result1[2]=$result["Tue"];
$result1[3]=$result["Wed"];
$result1[4]=$result["Thu"];
$result1[5]=$result["Fri"];
$result1[6]=$result["Sat"];
$result1[7]=$result["Sun"];
 
echo $result["Fri"][0]." ".$result["Fri"][1]."<br>";
echo "<pre>";
print_r($result);
echo "</pre>";
 
echo "<hr><hr>";
echo "<pre>";
print_r($result1);
echo "</pre>";
 
?>

Вывод даты за месяц

Показать »

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
require "config.php";
 
//$rows = mysql_query("SELECT * FROM `calendar`");//" WHERE `createdate` = $month year");
//echo now(); exit();
 
$month=11;
$year=2015;
/*
$times  = mktime(0,0,0,$month,1,$year);
echo date("Y-m-d h:i:s",$times)."<br>";
//exit();
*/
 
$rows =mysql_query("select * from `calendar` where date_format(Data, '%Y%m') = date_format('".$year."-".$month."-11 00:00:00', '%Y%m')");
if(!$rows){
echo "mysql_error".mysql_error()."<br>";
exit();
}
while ($str = mysql_fetch_array($rows)){
echo $str['CalID']." - ".$str['Data']."<br>";
}
 
?>

 

 

 

 

 

 

 

 

 

 

Добавить комментарий Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Рубрики

  • C++ (293)
  • JavaScript (1)
  • linux (1)
  • MFC (39)
  • node.js (2)
  • React (3)
  • vBulletin (5)
  • Visual Studio (9)
  • wordpress (18)
  • Разное (29)

Метки

Ajax bootstrap CentOS CLI expressjs FormData GDlib google Invisible reCAPTCHA JWT media MFC php react-router-dom redux repository wordpress RTTI STL vBulletin vector Visual Studio WINAPI wordpress wp-plugins XMLHttpRequest Двоичное дерево Задачи С++ Игры С++ Исключения С++ О-большое Операторы_С++ Перегрузка операторов С++ Поиск С++ Потоки Проектирование_С++ С++ Типы_С++ Типы С++ Шаблоны С++ библиотеки локализация макросы С++ сортировка С++

Свежие комментарии

  • RA3PKJ к записи visual C++, создание диалоговых окон.
  • JasonReant к записи Создание и использование статических библиотек .lib в visual studio.
  • MyWin2020 к записи Программка для заполнения форума на vBulletin 3.8.7
  • ScottJip к записи Создание и использование статических библиотек .lib в visual studio.
  • ArnoldKig к записи Создание и использование статических библиотек .lib в visual studio.
©2021 Kselax.ru Theme by ThemeGiant