Простой вывод из базы, в зависимости от значения переменной
1 рубей 1.000
2 долларов 33.505
3 евро 45.606
Вот, и у меня есть переменная
$valutes = "1"; // Валюта 1-рублей, 2-долларов, 3 - евро. Можно добавлять в админ-панели.
Вобщем мне надо выводить название валюты в зависимости от переменной.
Вот код который я тестил, но так ничё не добился:
// Инклюдим конфиги
include("../../function/config.php");
include("configuration.php");
//Стартуем сессию
session_start();
//Конектим мускул-сервер
$connect = mysql_connect($host, $db_login, $db_pass);
$select_db = mysql_select_db($name_db);
//Вытаскиваем валюту
$valute = mysql_query("SELECT * FROM `shop_valute`");
$val = mysql_fetch_array($valute);
//Выводим валюту
echo("Валюта магазина - ".$val[$valutes]." <br>");
echo("<br>");
// Завершаем соединение
mysql_close($connect);
?>
Вот, мне нужен ресультат
Валюта магазина - (если $valutes = 1) рублей
(если $valutes = 2) долларов
(если $valutes = 3) евро
Как реализовать без циклов и всякой хни...?
SELECT *
FROM `shop_valute`
WHERE id = $valutes
");
SELECT *
FROM `shop_valute`
WHERE id = $valutes
");
Дружище, про SQL-инъекции слыхал? По-видимому, нет.
Чтобы избежать их в данном случае лучше всего сделать так:
$result = mysql_query("SELECT * FROM shop_valute WHERE id = $valutes");
// Инклюдим конфиги
include("../../function/config.php");
include("configuration.php");
//Стартуем сессию
session_start();
//Конектим мускул-сервер
$connect = mysql_connect($host, $db_login, $db_pass);
$select_db = mysql_select_db($name_db);
//Вытаскиваем валюту
$valute = mysql_query("SELECT * FROM shop_valute WHERE id = $valutes");
$val = mysql_fetch_array($valute);
//Выводим валюту
echo("Валюта магазина - ".$val[$valutes]." <br>");
echo("<br>");
// Завершаем соединение
mysql_close($connect);
?>
А получается также, что если $valutes = 1, то надпись рублей, а если $valutes = 2, то надпись 1.1000, т.е. он опять отображает curs, а не title...
// Инклюдим конфиги
include("../../function/config.php");
include("configuration.php");
//Стартуем сессию
session_start();
//Конектим мускул-сервер
$connect = mysql_connect($host, $db_login, $db_pass);
$select_db = mysql_select_db($name_db);
//Вытаскиваем валюту
$valute = mysql_query("SELECT * FROM shop_valute WHERE id = $valutes");
$val = mysql_fetch_array($valute);
//Выводим валюту
echo("Валюта магазина - ".$val[$valutes]." <br>");
echo("<br>");
// Завершаем соединение
mysql_close($connect);
?>
А получается также, что если $valutes = 1, то надпись рублей, а если $valutes = 2, то надпись 1.1000, т.е. он опять отображает curs, а не title...
Вот например:
Если у вас переменная $valutes принимает всего 3 значения - то соответственно в таблице тоже должно быть 3 значения (как таблица ваша устроена вы не показали)
Или вот еще один бредовый участок:
Опять же непонятно что вы тут выводите.
В общем чтобы сказать что у вас работает не так нужно как минимум знать устройство вашей таблицы.
id title curs
1 рубей 1.000
2 долларов 33.505
3 евро 45.606
Скрипт мой, ток не пойму как правельно вывести...а тот бредовый кусок, был просто пример как я пытался, сделать...
Вот я и спрашиваю здесь как вывести правильно в зависимости от значения переменной...
З.Ы Значений переменной может быть хоть сколько, это добавляется в админке...
Ну те же картинки например...или же лучше создать папку upload и всё туда грузить?
Это вопрос целостности данных. СУБД контролирует работу над любыми объектами в БД, тогда как ФС позволяет фактически бесконтрольно (в плане логики программы) работать с файлами. Здесь скорее вопрос надежности - если выдвигаются серьезные требования на целостность БД, то конечно, данные грузить в БД; в разумных пределах, разумеется - файл на пару гигабайтов, понятное дело, туда никто в здравом уме засовывать не будет.
Врядли картинки требуют исключительного внимания к себе, потому лучше их хранить в отдельном каталоге - да и передаваться клиенту будут быстрее.
З.Ы. СУБД умеют целиком бэкапить БД, а в случае, когда у нас еще имеются внешние файлы, то об их сохранности нужно самому заботиться.
Ясно, спасибо!
Ну а можно получить кансультинг на мою первую проблему?
Ясно, спасибо!
Ну а можно получить кансультинг на мою первую проблему?
Да нет, переменная есть, она хранится в инклюдном файле
include("configuration.php");
Там она имеет значение:
$valutes = "1"; // Валюта 1-рублей, 2-долларов, 3 - евро. Можно добавлять в админ-панели.
Поэтому не в этом проблема...
Проблема в том что когда стоит значение 1, то он отображает:
Когда значение 2, он отображает
А по моему замыслу должно быть написано:
Вам же ответили, где ошибка. Если $valutes == 2, то выводиться второе поле (отсчет от 0) в строке результата, т.е. 1.100.
Чтобы не парить вас (чтением учебника), то вот решение:
echo("Валюта магазина - ".$val[1]." <br>"); или echo("Валюта магазина - ".$val["title"]." <br>");
А что это значит?