[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Работа с БД
vadya13
Ребят такой вопрос.
Существует форма оформления ремонта техники servis.inc.php

<h3>Оформление ремонта</h3>
<form action='<?= "inc/conect.inc.php"?>' method='post'>
<label>Тема письма: </label><br />
<input name='subject' type='text' size="50"/><br />
<label>Содержание: </label><br />
<textarea name='body' cols="50" rows="10"></textarea><br /><br />
<input type='submit' value='Отправить' />
</form>


Подключение к БД осуществляется следующим способом:

<?php
mysql_connect($host, $user, $password);
mysql_select_db($db);

$title=mysql_real_escape_string($_POST['subject']);
$content=mysql_real_escape_string($_POST['body']);
$query="INSERT INTO `test` . `application` (`title`,`content`) VALUES ('".$title."','".$content."')";
mysql_query($query);

?>

Когда захожу в БД в phpMyAdmin все записи отправленные в базу сохраняются иероглифами:
‹РІРїРІРІРїС„ыцвцфывукчпфывфвфывыфывфывфы

кодировка UTF-8
в БД utf8_general_ci


Как быть с такой ерундой?
I need your help(( Thanks.
Valick
vadya13, после соединения с бд (mysql_connect($host, $user, $password); ), необходимо установить кодировку соединения. Погугли.

_____________
Стимулятор ~yoomoney - 41001303250491
vadya13
Valick, спасибо огромное, как не додумался сразу.
Сейчас исправил все работает)))
vadya13
Еще вопросик такой назрел.
После нажатия кнопки Отправить меня перекидывает на страницу conect.inc.php
Что прописать чтобы после нажатия этой кнопки остаться на странице servic.inc.php??????
vadya13
И может кто посоветует как изучить php чтобы начать разбираться а не тупо копировать и спрашивать и так основы знать?
Valick
Цитата (vadya13 @ 16.01.2016 - 21:04)
как изучить php

читайте книги как можно больше

что бы оставаться на той же странице надо что бы обработчик формы был в том же файле что и форма, проще всего сделать include('conect.inc.php'); в файле servic.inc.php

но вы правы, вам много надо изучить

_____________
Стимулятор ~yoomoney - 41001303250491
vadya13
Valick спасибо огромнейшее))))
vadya13
Попытался сделать простую авторизацию возникли проблемы, может кто подскажет в чем дело.

Как должно быть:
Кликаю на пункт меню открывается форма enter.php авторизовываюсь и попадаю на view.inc.php там расположен материал доступный только авторизованным пользователям! Но как только кликаю на пункт меню view открывается страница view без формы с авторизацией и следующее предупреждение???

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\localhost\www\12\index.php:1) in Z:\home\localhost\www\12\auth\auth.php on line 2


view.inc.php

<?php
require "auth/auth.php";
?>
<p>
На эту страницу вход только авторизованным пользователям!</p>
<?php
include 'inc/bd.inc.php';// вывод значений из таблицы
?>


enter.php.

<?php
session_start();

if($_SESSION['admin']){
header("Location: inc/view.inc.php");// view.inc.php
exit;
}

$admin = 'admin';
$pass = 'a029d0df84eb5549c641e04a9ef389e5';

if($_POST['submit']){
if($admin == $_POST['user'] AND $pass == md5($_POST['pass'])){
$_SESSION['admin'] = $admin;
header("Location: inc/view.inc.php");// view.inc.php
exit;
}else echo '<p>Логин или пароль неверны!</p>';
}
?>
<hr />
Это страница авторизации.
<br />
<form method="post">
Username: <input type="text" name="user" /><br />
Password: <input type="password" name="pass" /><br />
<input type="submit" name="submit" value="Войти" />
</form>


auth.php

<?php
session_start();

if($_GET['do'] == 'logout'){
unset($_SESSION['admin']);
session_destroy();
}

if(!$_SESSION['admin']){
header("Location: auth/enter.php");
exit;
}
?>

vadya13
ошибочка вышла
Вот как все на самом деле

Попытался сделать простую авторизацию возникли проблемы, может кто подскажет в чем дело.

Как должно быть:
Кликаю на пункт меню открывается форма enter.php авторизовываюсь и попадаю на view.inc.php там расположен материал доступный только авторизованным пользователям! Но как только кликаю на пункт меню view открывается страница c формой авторизации и следующее предупреждение???

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\localhost\www\12\index.php:1) in Z:\home\localhost\www\12\auth\enter.php on line 2



view.inc.php

<?php
require "auth/auth.php";
?>
<p>
На эту страницу вход только авторизованным пользователям!</p>
<?php
include 'inc/bd.inc.php';// вывод значений из таблицы
?>


enter.php.

<?php
session_start();

if($_SESSION['admin']){
header("Location: inc/view.inc.php");// view.inc.php
exit;
}

$admin = 'admin';
$pass = 'a029d0df84eb5549c641e04a9ef389e5';

if($_POST['submit']){
if($admin == $_POST['user'] AND $pass == md5($_POST['pass'])){
$_SESSION['admin'] = $admin;
header("Location: inc/view.inc.php");// view.inc.php
exit;
}else echo '<p>Логин или пароль неверны!</p>';
}
?>
<hr />
Это страница авторизации.
<br />
<form method="post">
Username: <input type="text" name="user" /><br />
Password: <input type="password" name="pass" /><br />
<input type="submit" name="submit" value="Войти" />
</form>


auth.php

<?php
session_start();

if($_GET['do'] == 'logout'){
unset($_SESSION['admin']);
session_destroy();
}

if(!$_SESSION['admin']){
header("Location: auth/enter.php");
exit;
}
?>
Valick
что говорит гугл по поводу headers already sent?

_____________
Стимулятор ~yoomoney - 41001303250491
vadya13
Просто перенести повыше в скрипте header();
inpost
vadya13
не *просто* выше перенести строчку, а логику изменить. Сначала обработка данных, потом его вывод!

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
VeRTak
Цитата (vadya13 @ 16.01.2016 - 22:04)
И может кто посоветует как изучить php чтобы начать разбираться а не тупо копировать и спрашивать и так основы знать?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.