[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод данных из базы
Remka
<?php 
// Загружаем дату и месяц сервера в формате dd.mm
$date=date("dd.mm");

// Параметры подключения к Базе Данных
define("HOST","localhost"); // host Сервера по умолчанию localhost
define("USER","логин"); // Имя пользователя Базы Данных
define("PASS","пароль"); // Пароль пользователя Базы Данных
define("DB","база"); // Имя базы Данных

// Подключаемся к Базе Данных

$link = mysql_connect(HOST,USER,PASS) or die (mysql_error());

// Выбираем Базу Данных
mysql_select_db(DB, $link);

//Устанавливаем кодировку UTF8
mysql_query ("SET NAMES utf8");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");

// Формируем строку для запроса к Базе Данных
$sql = "SELECT * FROM `event`"; // Внимание!!! Название таблицы оформляется в обратных ковычках

// Скармливаем запрос MySQL

$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);

// Рисуем табличку
$table = "<table border=0 width=100% align=center>\n";

while ($row = mysql_fetch_assoc($result))
{
$table .= "<tr>\n";

$table .= "<td>".$row['id']."</td>\n";
$table .= "<td><a href=".$row['Event_URL'].">".$row['Event_Name']."</a></td>\n";
$table .= "<td><a href=".$row['Next_URL'].">".$row['Next_Name']."</a></td>\n";

$table .= "</tr>\n";
}

$table .= "</table>\n";
?>


Делал по вашему мануалу
Пытаюсь понять что к чему
в итоге ничего не работает

Хотел осуществить следующее:
сегодня 03.02
$date=date("dd.mm");

в бд хронятся записи под id 03.02

Так вот если сегодня 03.02 вывести значения Event_Name и Next_Name в виде ссылок
адреса ссылок хронятся в Event_URL и Next_URL

Все записи в sql сделаны следующим образом
тип = varchar
Кодировка = cp1251

Подскажите пожалуйста как все это осуществить? может где ошибку допустил.
Делал подобное только в место бд брал html файл там все работает
Цитата
flarian.ru/index.php
Прошу прощенься за ссылку вообщем нужно осуществить тоже самое но вместо html чтобы была бд.



Спустя 5 часов, 44 минуты, 30 секунд (3.02.2010 - 06:58) dirsex написал(а):
Ну если тебя правильно понял, тогда можно сделать так:

<?
// сервер со скулей
$dbhost="localhost";
// логин к скуле
$dblogin="login";
// пасс к скуле
$dbpass="pass";
// база в скуле
$base="dbtest";
// таблица в базе в которой твои значения
$table="table1";
// сдесь подключаемся
$db=mysql_connect($dbhost,$dblogin,$dbpass);
mysql_select_db($base,$db);
// помойму чтобы получить типо сегодня 02.03 не надо писать dd.mm а просто d.m
$date=date("d.m");
// выбираем строку где сегодняшнее число
$sql=mysql_query("SELECT * FROM $table WHERE id='$date'");
// вгоняем в массив
$sql=mysql_fetch_assoc($sql);
// выводим
echo("<a href='http://".$sql['Event_URL']."'>".$sql['Event_Name']."</a><br><a href='http://".$sql['Next_URL']."'>".$sql['Next_Name']."</a>");
?>


Короче так должно получиться, писал на ходу. Вроде задача простая если я тебя правильно понял.

Спустя 3 часа, 2 минуты, 45 секунд (3.02.2010 - 10:01) Remka написал(а):
Да все заработало только вот вместо русского языка знаки вопроса.
В базе кодировка выставлена
или тип таблицы нужен text?

Или в php коде выставлять кодировку?

Спустя 1 час, 42 минуты, 21 секунда (3.02.2010 - 11:43) dirsex написал(а):
после подключения к дб после (mysql_select_db($base,$db)wink.gif попробуй это добавить
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");

я так понимаю ты значения через phpmyadmin вносил?

Тоесть полный код так выглядит:
<?
// сервер со скулей
$dbhost="localhost";
// логин к скуле
$dblogin="login";
// пасс к скуле
$dbpass="pass";
// база в скуле
$base="dbtest";
// таблица в базе в которой твои значения
$table="table1";
// сдесь подключаемся
$db=mysql_connect($dbhost,$dblogin,$dbpass);
mysql_select_db($base,$db);
// + Сдесь кодировку ставим
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
// помойму чтобы получить типо сегодня 02.03 не надо писать dd.mm а просто d.m
$date=date("d.m");
// выбираем строку где сегодняшнее число
$sql=mysql_query("SELECT * FROM $table WHERE id='$date'");
// вгоняем в массив
$sql=mysql_fetch_assoc($sql);
// выводим
echo("<a href='http://".$sql['Event_URL']."'>".$sql['Event_Name']."</a><br><a href='http://".$sql['Next_URL']."'>".$sql['Next_Name']."</a>");
?>

Спустя 15 минут, 13 секунд (3.02.2010 - 11:59) Remka написал(а):
Огромное спасибо за помощь.
вот что у меня получилось:
В базе 6 таблиц
Цитата

1. id                    varchar(5)        cp1251_general_ci
2. date            varchar(255)        cp1251_general_ci
3. Event_Name    text                cp1251_general_ci
4. Next_Name    text                cp1251_general_ci
5. Event_URL    varchar(50)        cp1251_general_ci
6. Next_URL    varchar(50)        cp1251_general_ci


И php код

<?php
// Установка кодировки текста выводимая html кодом
header("Content-Type: text/html; charset=utf-8");

// сервер MySql
$dbhost="localhost";

// Имя пользователя MySql
$dblogin="Логин";

// Пароль пользователя MySql
$dbpass="пароль";

// Имя базы данных MySql
$base="база";

// Таблица базы данных где хранятся данные
$table="event";

// Подключаемся к базе данных
$db=mysql_connect($dbhost,$dblogin,$dbpass);
mysql_select_db($base,$db);

// Устанавливаем кодировку текста принятую от базы данных
mysql_query("SET NAMES 'UTF8'");

// Загружаем сегодняшнею дату в формате d.m (Выводимая дата будет отображаться как 0d.0m или dd.mm)
$date=date("d.m");

// выбираем строку в таблице со значением сегодняшнего числа (Формата 0d.0m или dd.mm)
$sql=mysql_query("SELECT * FROM $table WHERE id='$date'");

// Вгоняем в массив
$sql=mysql_fetch_assoc($sql);

// выводим
echo("
<font color='#dd0000'><b><i>Сегодня "
.$sql['date']."</i></b></font>
<br>
<font color='#dd0000'><b>Праздник: </b></font>
<a href='http://"
.$sql['Event_URL']."'><font color='#dd0000'>".$sql['Event_Name']."</font></a>
<br>
<font color='#dd0000'><b>&nbsp    &nbspСкоро: </b></font>
<a href='http://"
.$sql['Next_URL']."'><font color='#dd0000'>".$sql['Next_Name']."</font></a>
"
);
?>


Посмотрите пожалуйста может есть какие ошибки
Может совет дадите на будущее
буду очень благодарен!

И большое спасибо за помощь!

Спустя 17 минут, 25 секунд (3.02.2010 - 12:16) DedMorozzz написал(а):
1. id varchar(5) cp1251_general_ci
а хедер - утф 8. используй везде утф8.
mysql_query("SET NAMES 'UTF8'"); - указал кодировку при подключении к БД. А в бд даныые в вин 1251. у тя не будут русский текст выводиться вообще. будут знаки вопроса.

Спустя 1 час, 50 минут, 14 секунд (3.02.2010 - 14:06) dirsex написал(а):
Цитата
1. id                    varchar(5)        cp1251_general_ci
2. date            varchar(255)        cp1251_general_ci
3. Event_Name    text                cp1251_general_ci
4. Next_Name    text                cp1251_general_ci
5. Event_URL    varchar(50)        cp1251_general_ci
6. Next_URL    varchar(50)        cp1251_general_ci


если выполняешь подключение с кодировкой utf8 то было бы неплохо поправить кодировку в ячейках твоей таблицы.

Если у тебя сайт на cp1251 и БД инфа в той же, тогда и подключайся на этой кодировке.

В общем я думаю дальше сам разберешься, что и как.

Спустя 25 минут, 56 секунд (3.02.2010 - 14:32) Remka написал(а):
Спасибо большое поправил кодировку ячеек на UTF8

Теперь следующая задача
Сделать Admin Файл
С возможностью добавлять данные, просматривать и редактировать существующие.

мои размышления

<html>
<
body>
<?php
function
sanitize_input(&$request) {
$request = mysql_real_escape_string(strip_tags($request));
}

if ($_POST["submit"]) {
array_walk_recursive($_POST, 'sanitize_input');

$db = mysql_connect("localhost","ЛОгин","Пароль");
mysql_select_db("Flarian",$db);


$sql = "INSERT INTO employees (id,date,Event_Name,Next_Name,Event_URL,Next_URL) VALUES ('".$_POST["id"]."','".$_POST["date"]."','".$_POST["Event_Name"]."','"._POST["Next_Name"],"','"._POST["Even_URL"],"','"._POST["Next_URL"],."')";
$result = mysql_query($sql);

echo "Спасибо Вам. Вот ваши данные\n";
} else {
?>
<form method="post" action="<?php echo $PHP_SELF?>">
id даты:<input type="varchar" name="id"><br>
Вывод даты:<input type="varchar" name="date"><br>
Событие:<input type="Text" name="Event_Name"><br>
Скоро:<input type="Text" name="Next_Name"><br>
URL События:<input type="varchar" name="Event_URL"><br>
URL Скоро:<input type="varchar" name="Next_URL"><br>
<
input type="Submit" name="submit" value="Enter information">
</
form>
<?php
}
?>
</body>
</
html>


запускаю Пишет вот что
Parse error: syntax error, unexpected '[' in E:\inetpub\vhosts\Flarian.ru\httpdocs\admin_event.php on line 15

Спустя 3 минуты, 35 секунд (3.02.2010 - 14:36) stepan написал(а):
Ты присмотрись и увидишь в чем проблема

$sql = "INSERT INTO employees (id,date,Event_Name,Next_Name,Event_URL,Next_URL) VALUES ('".$_POST["id"]."','".$_POST["date"]."','".$_POST["Event_Name"]."','"._POST["Next_Name"],"','"._POST["Even_URL"],"','"._POST["Next_URL"],."')";

Во первых вот это ._POST
Во вторых вот это Name"],"

Спустя 2 минуты, 57 секунд (3.02.2010 - 14:39) Remka написал(а):
$sql = "INSERT INTO employees (id,date,Event_Name,Next_Name,Event_URL,Next_URL) VALUES ('".$_POST["id"]."','".$_POST["date"]."','".$_POST["Event_Name"]."','".$_POST["Next_Name"],"','".$_POST["Even_URL"],"','".$_POST["Next_URL"],."')";


Вот так надо?

Спустя 38 секунд (3.02.2010 - 14:39) Winston написал(а):
По подсветке видно даже
'"._POST["Next_Name"],"','"._POST["Even_URL"],"','"._POST["Next_URL"],."'

Вот так надо $_POST['Next_name']

Спустя 1 минута, 52 секунды (3.02.2010 - 14:41) Winston написал(а):
Цитата (Remka @ 3.02.2010 - 14:39)
Вот так надо?

Да вот так, но красивее с одинарными кавычками
$_POST['Next_Name']

Спустя 3 минуты, 8 секунд (3.02.2010 - 14:44) Remka написал(а):
Name"],

Там вместо , надо .

Вот так

.$_POST['Next_Name'].

Спустя 31 секунда (3.02.2010 - 14:45) Kuliev написал(а):
Цитата (Remka @ 3.02.2010 - 03:14)
<?php 
// Загружаем дату и месяц сервера в формате dd.mm
$date=date("dd.mm");

// Параметры подключения к Базе Данных
define("HOST","localhost");  // host Сервера по умолчанию localhost
define("USER","логин");  // Имя пользователя Базы Данных
define("PASS","пароль"); // Пароль пользователя Базы Данных
define("DB","база");    // Имя базы Данных

// Подключаемся к Базе Данных

$link = mysql_connect(HOST,USER,PASS) or die (mysql_error());

// Выбираем Базу Данных
mysql_select_db(DB, $link);

//Устанавливаем кодировку UTF8
mysql_query ("SET NAMES utf8");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");

// Формируем строку для запроса к Базе Данных
$sql = "SELECT * FROM `event`";  // Внимание!!! Название таблицы оформляется в обратных ковычках

// Скармливаем запрос MySQL

$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);

// Рисуем табличку
$table = "<table border=0 width=100% align=center>\n";

while ($row = mysql_fetch_assoc($result))
{
$table .= "<tr>\n";
   
    $table .= "<td>".$row['id']."</td>\n";
    $table .= "<td><a href=".$row['Event_URL'].">".$row['Event_Name']."</a></td>\n";
    $table .= "<td><a href=".$row['Next_URL'].">".$row['Next_Name']."</a></td>\n";
   
    $table .= "</tr>\n";
}

$table .= "</table>\n";
?>


Делал по вашему мануалу
Пытаюсь понять что к чему
в итоге ничего не работает

Хотел осуществить следующее:
сегодня 03.02
$date=date("dd.mm");

в бд хронятся записи под id 03.02

Так вот если сегодня 03.02 вывести значения Event_Name и Next_Name в виде ссылок
адреса ссылок хронятся в Event_URL и Next_URL

Все записи в sql сделаны следующим образом
тип = varchar
Кодировка = cp1251

Подскажите пожалуйста как все это осуществить? может где ошибку допустил.
Делал подобное только в место бд брал html файл там все работает
Цитата
flarian.ru/index.php
Прошу прощенься за ссылку вообщем нужно осуществить тоже самое но вместо html чтобы была бд.

Плохо читал, в конце кто ЭХО выводить будет



echo $table;

Спустя 2 минуты, 16 секунд (3.02.2010 - 14:47) Remka написал(а):
Записывать в таблицу я научился
а как сделать чтобы можно было редактировать с предварительным просмотром?
Это не для моего уровня?

Спустя 2 минуты, 27 секунд (3.02.2010 - 14:50) Winston написал(а):
Цитата (Remka @ 3.02.2010 - 14:44)
Name"],

Там вместо , надо .

Вот так

.$_POST['Next_Name'].

Вот правильный запрос:
$sql = "INSERT INTO `employees` (`id`, `date`, `Event_Name`, `Next_Name`, `Event_URL`, `Next_URL`) VALUES ('".$_POST['id']."', '".$_POST['date']."', '".$_POST['Event_Name']."', '".$_POST['Next_Name']."', '".$_POST['Even_URL']."', '".$_POST['Next_URL']."')";

Спустя 4 минуты (3.02.2010 - 14:54) Winston написал(а):
Цитата (Remka @ 3.02.2010 - 14:47)
Записывать в таблицу я научился
а как сделать чтобы можно было редактировать с предварительным просмотром?
Это не для моего уровня?

Писать код не буду но дам направление smile.gif. Создаешь запрос на выборку SELECT, потом создаешь форму, и в полях выводишь то, что тебе нужно, потом создаешь запрос на обновление UPDATE, после нажатия на submit данные в базе обновляться. Понял ?

Спустя 23 минуты, 34 секунды (3.02.2010 - 15:17) Remka написал(а):
Да понял спасибо огромнейшее!!!
Приду домой буду пробовать.

Спустя 10 минут, 2 секунды (3.02.2010 - 15:27) Remka написал(а):
Ребят а может есть у кого нибудь желание обучать нуба?

Я могу выделить в благодарность виртуальный сервер на windows гигов на 50
и учетку на управление под plesk

Спустя 52 минуты, 57 секунд (3.02.2010 - 16:20) Winston написал(а):
Цитата (Remka @ 3.02.2010 - 15:27)
Ребят а может есть у кого нибудь желание обучать нуба?
Я могу выделить в благодарность виртуальный сервер на windows гигов на 50
и учетку на управление под plesk

Вот здесь, Joker что - то говорил про обучение, что он типа хочет, с кем - то позаниматься, спрашивай у него. И тем более здесь на форуме, проводятся online курсы php, тренируйся, чет не понятно, там можешь вопрос задать. И ВОТ еще пособие классное.
Быстрый ответ:

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