Примерен изход на mysql php таблица. Как да изведем данни от MySQL - ръководство за нешамани

Отделни статии описват други основи на работа с бази данни, а не само MySQL.

Създаване на MySQL таблица чрез PHP и други подробности

Сега ще ви разкажа по-подробно за тези, които са любопитни къде и какво къде да поставят.

Така че, нека създадем проста таблица, за да улесним разбирането на материала без излишен фанатизъм и умни думи. По-долу е даден скрипт, който може лесно да се изпълни в раздела SQL на контролния панел на phpmyadmin; всичко, което трябва да направите, е да копирате текста и да щракнете върху бутона за изпълнение:

CREATE TABLE `base_name`.`table_name` (`id` INT NULL AUTO_INCREMENT COMMENT "ID номер на запис", `text_` VARCHAR(500) NULL COMMENT "Текстово поле", PRIMARY KEY (`id`)) ENGINE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT="Експериментална таблица";

Сега в нашата база данни (DB) има таблица с име `table_name`

Няколко важни бележки.

  • Създайте си навик веднага да попълвате коментари за полета, това ще ви позволи да развиете навика да коментирате и впоследствие няма да има проблеми при разработването на големи и динамични полета, тъй като се съмнявам, че ще запомните 10 хиляди полета наизуст и какво и защо всеки от тях е за поле е необходимо.
  • Забравете за всички съществуващи преди това кодировки и работете само в UTF. са очевидни за другите, прочетете информацията на връзката.
  • Напишете всички полета само с малки или само с главни букви. За съжаление, PHP е придирчив към регистъра на буквите и ако регистърът се промени, много скриптове и полета може да не се показват вместо вас или да се показват, но неправилно.

Ето как ще изглежда напълно завършеният код на HTML страницата:

Проблем с UTF-8 кодиране

Както показва статистиката, това е толкова популярен проблем, че реших да го включа в отделна глава. Но в действителност няма проблеми, просто веднага след процедурата за свързване към базата данни добавете три реда, подчертани по-долу, които отговарят за превключването на кодирането на изходните резултати, ето пример:

// установяване на връзка със сървъра (@ потискане на възможни грешки) @mysql_connect($sdd_db_host,$sdd_db_user,$sdd_db_pass); // превключване към желаната база данни @mysql_select_db($sdd_db_name); // настройка на кодирането, използвано за изпращане на данни от PHP скрипт към MySQL @mysql_query("set character_set_client="utf8""); // настройка на кодирането, в което данните се извеждат от MySQL базата данни към PHP скрипт @mysql_query("set character_set_results="utf8""); // настройка на кодирането, в което служебните команди ще се изпращат до сървъра @mysql_query("set collation_connection="utf8_general_ci"");

Много хора използват линията:

Mysql_query("задаване на ИМЕНА utf8");

Това работи, но това повикване ще бъде премахнато в бъдещите версии на MySQL. Това е посочено на уебсайта на MySQL, така че силно не се препоръчва използването на тази форма на превключване на кодиране.

Ако напълно сте загубили ума си и сте решили да се върнете към програмирането през 90-те години и смятате, че мъртвото кодиране cp1251 е вашият идеал, тогава просто заменете UTF със съответните стойности cp1251 и cp1251_general_ci.

Неприятно е, но е факт, че хората, които се занимават с програмиране, особено напоследък, напълно са забравили как да четат придружаващата документация, където са описани повечето проблеми.

Основни проблеми и трикове при работа с таблици в MySQL чрез PHP

Ето някои трикове, които често срещат и начинаещите:

Защо се нуждаете от знака @ преди командите на mysql?

Този знак потиска извеждането на информация за грешки в двигателя. Тъй като статията е за начинаещи, няма да мине много време, преди да стигнете до правилната, така че, за да не ви претоварвам с море от ненужна информация и да не се разсейвате от нищо, поставям този знак.

Какво може да се направи по-трудно?

За по-сложните в този сайт има цял един, като са описани и основните и най-често срещаните, които за първата година на обучение ще ви стигнат за всичките ви нужди.

Благодаря на diego_lott26, че посочи грешката в кода.

Отворете базата данни. За да създадете таблица, трябва да имате база данни, която ще я съдържа. Можете да отворите базата данни, като напишете USE база даннина командния ред на MySQL.

  • Ако не си спомняте името на базата данни, въведете ПОКАЖИ БАЗИ ДАННИза изброяване на базите данни на MySQL сървъра.
  • Ако все още нямате база данни, можете да създадете такава, като напишете СЪЗДАВАНЕ НА БАЗА ДАННИ. Името на базата данни не може да съдържа интервали.

Научете основните типове данни. Всеки запис в таблица се съхранява като специфичен тип данни. Това позволява на MySQL да взаимодейства с тях по различни начини. Типовете данни, които ще използвате, зависят от целта на вашата таблица. Има много типове, различни от следните, но можете да ги използвате, за да създадете основна, използваема таблица:

Създайте таблица. За да създадете таблица от командния ред, трябва да създадете всички полета с една команда. Създавате таблици с помощта на командата СЪЗДАВАНЕ НА ТАБЛИЦАпоследвано от информация за таблицата. За да създадете основен запис на служител, трябва да въведете следната команда:

CREATE TABLE служители (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, фамилия VARCHAR (20), собствено име VARCHAR (20), телефон VARCHAR (20), дата на раждане DATE)

  • INT NOT NULL PRIMARY KEY AUTO_INCREMENT създава цифров идентификатор за всеки служител, който се добавя към записа. Този брой автоматично се увеличава всеки път. Това ви позволява лесно да препращате служители чрез други функции.
  • Въпреки че VARCHAR позволява намаляване на размера въз основа на въведените данни, можете да зададете максимум за него, за да попречите на потребителя да въвежда низове, които са твърде дълги. В горния пример името и фамилията са ограничени до 20 знака.
  • Имайте предвид, че записът на телефонния номер се съхранява като VARCHAR, така че знаците също се обработват правилно.
  • Проверете дали вашата таблица е създадена правилно. След като създадете таблицата, ще получите съобщение, че е създадена успешно. Сега можете да използвате командата ОПИСВАМза да сте сигурни, че сте включили всички полета, които искате, и че те имат правилните типове данни. Набиране база данни DESCRIBE;и погледнете графиката, която се появява, за да проверите структурата на вашата таблица.

    Създайте таблица с помощта на PHP. Ако използвате PHP за администриране на вашата MySQL база данни чрез уеб сървър, можете да създадете таблица с помощта на прост PHP файл. Предполага се, че базата данни вече съществува на MySQL сървъра. За да създадете същата таблица като в Стъпка 3, въведете следния код, като замените информацията за връзка с това, което е подходящо за вас:

    В предишния урок научихме как да създадем връзка към сървър на база данни. Следващата стъпка е да създадете базата данни и таблиците.

    Нека да разгледаме два начина за създаване на база данни и таблици. Първият е как се прави в PHP, вторият е използването на по-приятелската помощна програма PhpMyAdmin, която е стандартна за повечето уеб хостове и в XAMPP.

    Ако хоствате сайт с поддръжка на PHP и MySQL, базата данни може вече да е създадена за вас и можете да пропуснете този раздел от урока и да започнете да създавате таблици. Не забравяйте да се консултирате с помощните страници на хоста.

    Създаване на бази данни и таблици чрез PHP

    Функцията mysql_query се използва за запитване към MySQL базата данни. Заявките се пишат на език за структурирани заявки (SQL). SQL е най-широко използваният език за заявки към бази данни - не само за MySQL бази данни - той е много логичен и лесен за научаване. В този и следващите уроци ще научите всичко важно за SQL заявките.

    Когато създавате база данни, SQL заявката CREATE DATABASE се използва със следния синтаксис:

    СЪЗДАВАНЕ НА БАЗА ДАННИ db име

    Лесно и просто, нали!? Нека се опитаме да вмъкнем това в PHP скрипт:

    Mysql_connect("mysql.myhost.com", "user", "sesame") или die(mysql_error()); mysql_query("СЪЗДАВАНЕ НА БАЗА ДАННИ mydatabase") или die(mysql_error()); mysql_close();

    Първо се свързваме с MySQL сървъра. След това създаваме базата данни "mydatabase". И накрая затворете връзката към MySQL сървъра.

    Дотук добре... но нещата стават малко по-сложни, когато искаме да създадем таблици в PHP. Когато създаваме таблици, използваме SQL заявката CREATE TABLE със следния синтаксис:

    СЪЗДАВАНЕ НА ТАБЛИЦА име на таблица (колона_име1 DATA_TYPE, колона_име2 DATA_TYPE, column_name3 DATA_TYPE, ...)

    име_на_таблицаИ име_на_колонатова, разбира се, са подходящи имена. DATA_TYPEизползвани за указване на типа данни, вмъкнати в колона. Ето най-често срещаните видове:

    Цели числа Десетични числа Кратък текст с дължина до 255 знака Обикновен текст с дължина до 65 535 знака Дълъг текст до 4 294 967 295 знака Дати във формат ГГГГ-ММ-ДД Време във формат ЧЧ:ММ:СС Час и дата във формат ГГГГ-ММ- ДД ЧЧ:ММ :СС

    Като цяло е логично и сравнително просто. Нека се опитаме да вмъкнем това в нашия пример:

    Mysql_connect("mysql.myhost.com", "user", "sesame") или die(mysql_error()); mysql_select_db("хора") или die(mysql_error()); mysql_query("CREATE TABLE MyTable (id INT AUTO_INCREMENT, FirstName CHAR, LastName CHAR, Phone INT, BirthDate DATE PRIMARY KEY(id)")) Or die(mysql_error()); mysql_close();

    В този пример започваме със свързване към MySQL сървъра. След това използваме функцията за избор на базата данни "хора". След това създаваме таблица „лица“ от 5 колони.

    Обърнете внимание, че за колоната „id“ използваме, за да посочим, че колоната съдържа числа, и след това добавяме, за да увеличим автоматично тези числа и да гарантираме, че се генерира уникален идентификатор за всеки ред.

    В края използваме, за да зададем колоната "id" като първичен ключ. Първичният ключ уникално идентифицира всеки запис (/ред) в таблицата, което е особено полезно за последващи актуализации на база данни.

    Създаване на база данни и таблици с помощта на phpMyAdmin

    Може да бъде полезно да можете да създавате бази данни и таблици директно в PHP. Но често е по-лесно да използвате phpMyAdmin (или друга помощна програма за администриране на MySQL), която е стандартна за повечето уеб хостове и XAMPP. Екранната снимка по-долу показва как да създадете база данни и таблици с помощта на phpMyAdmin.

    Забележка: активирана е адаптивната версия на сайта, която автоматично се настройва към малкия размер на вашия браузър и скрива някои детайли от сайта за по-лесно четене. Приятно гледане!

    Здравейте, скъпи читатели на сайта в блога! В последната статия разгледахме всичко за PHP, но за да консолидираме получените теоретични материали, предлагам да изпълним една практическа задача, която е доста често срещана в ежедневието на разработчика на уебсайтове.

    В нашата любима CMS циклите се използват за изобразяване на всяка HTML таблица; няма друг начин. Например продукт (смартфон) има характеристики: ширина, височина, дълбочина, цвят, размер на дисплея, капацитет на паметта и др. Всички тези свойства обикновено се изобразяват под формата на HTML таблица, много е удобно и добро, изглежда гладко.

    За да разберем как се прави това, днес ще решим такъв прост проблем като създаването на таблица за умножение:

    Да започваме

    Първо трябва да измислим и разберем алгоритъма, който ще следваме. От какво се състои една HTML таблица? Нека нарисувам:

    Както можем да видим от фигурата, етикетът на таблицата се среща само 1 път, така че трябва ясно да е извън цикъла. Повтаряме само реда (tr) и клетките в него, наричани още колони (td). Това е, пак нищо не се случва при нас.

    Сега трябва да решите кой цикъл е най-добре да използвате за тази задача. Това е класическа опция и най-доброто решение е for цикъл, въпреки че можете да използвате време, ако сте по-свикнали с него. Но ще ни трябва не един цикъл, а два: първият ще рисува и брои редове (tr), а вторият колони (td).

    Готов! Резултат:

    В първия цикъл рисуваме tr, с td вътре в него. Този код може да се нарече идеалният шаблон за изобразяване на всяка таблица, но аз знам как да го направя още по-добре. Няма нужда да напрягате PHP всеки път и да печатате на екрана (ехо) след всяка итерация, много по-добре е да поставите всичко на едно място (променлива) и да ехо в самия край, един единствен път:

    За да направим това, използвахме оператора .= присвояване чрез . Резултатът ще бъде абсолютно същият. Но това не е всичко. Трябва да направим нашата маса така, че да изглежда като първата снимка в тази статия. Тоест направете първия ред и колона удебелени и сложете зелен фон. Този резултат може да се постигне по два начина:

    • Използване на CSS3 (правилният начин);
    • Използване на PHP (грешен метод, но ще го използваме, тъй като учим PHP в този раздел);

    И така, нека го направим с помощта на PHP:

    Красота:) Можете да покажете маса поне 100 на 100. Играйте си както искате, полезно е за опит. Благодаря ви за вниманието и приятен уикенд!

    Създавам таблица за показване на уеб страница и тази таблица е попълнена с данни от MySQL база данни. Опитвам се да правя няколко неща, които ме затрудняват.

    Първо се опитвам да извикам PHP код, който съществува в отделен файл в HTML чрез JavaScript. Мисля, че работи правилно, но не съм 100% сигурен (защото таблицата няма да се покаже). Мисля, че работи правилно, защото FireBug показва някакъв табличен код (който е в PHP файла).

    Второ, опитвам се редовете да променят цветовете си за лесно гледане. Досега моят PHP код е по-долу. Таблицата изобщо не се показва в нито един браузър.

    $query = "ИЗБЕРЕТЕ * ОТ служители"; $резултат = mysql_query($заявка); $num = mysql_num_rows($result); ехо "

    "; за ($i = 0; $i< $num; $i++){ $row = mysql_fetch_array($result); $id = $row["id"]; $l_name = $row["l_name"]; $f_name = $row["f_name"]; $ssn = $row["ssn"]; $class = (($i % 2) == 0) ? "table_odd_row" : "table_even_row"; echo ""; ехо " "; ехо " "; ехо " "; ехо " "; ехо ""; ) ехо "
    $wrap_id$wrap_l_name$wrap_f_name$wrap_ssn
    "; mysql_close($link); )

    ПРОМЯНА

    За да отговоря на няколко въпроса:

    @controlfreak123, не съм сигурен какво имаш предвид под „include("filename_with_php_in_it")". Тъй като страницата не се извиква за разбор, мисля, че се извиква и се прави контакт. Посочих в първоначалния си въпрос, че смятам, че това е правилно, защото FireBug показва кода за таблицата и този код е в отделен PHP файл, така че трябва да има връзка между HTML файла и PHP файла. Ето как извиквам PHP файл от HTML файл, ако искате да знаете:

    @Matt S, не получавам много изходна информация, всъщност изобщо не знаех, че получавам нещо, докато не погледнах FireBug и видях, че PHP кодът (или част от него) всъщност се предава в HTML файл. Конкретният въпрос е как да получите данни от MySQL база данни и да ги попълните в HTML таблица чрез PHP. Мога също да потвърдя, че служителите имат данни в него, два записа, които въведох за тестване. Мога да опитам да поставя кода в моя собствен файл без JavaScript, както предложихте, но това ще провали целта ми, тъй като искам моите HTML и PHP файлове да бъдат отделни, но мога да опитам да проверя дали PHP кодът е добър и да се уверя JavaScript не го разбива.

    @Aaron, не съм сигурен какво питаш (съжалявам). Кодът е предназначен за попълване и създаване на таблица на HTML страница.



  • Свързани публикации