2013-08-26 4 views
1

Обычно все основные PHP-MYSQL-SELECT учебники основаны на этом кодеПолучить динамический MySql столбец таблицы с PHP

$query = "SELECT * FROM table_name"; 
$result = mysql_query($query); 

$num = mysql_num_rows($results); 
if ($num > 0) { 
    while ($row = mysql_fetch_assoc($result)) { 
     // You have $row['ID'], $row['Category'], $row['Summary'], $row['Text'] 
    } 
} 

, но для этого мне нужно знать имя столбца как «ID», «Категория» , «Резюме» или «Текст». И если я добавлю в phpmyadmin новый столбец, например «Электронная почта», я также должен добавить $row['Email'] в скрипт php.

Как я могу сделать этот шаг динамическим?

+1

* PSA: * Функции 'mysql_ *' [устарели в PHP 5.5] (http://php.net/manual/en/faq.databases.php#faq.databases.mysql.deprecated). Это не рекомендуется для написания нового кода, так как это предотвратит вас в будущем. Вместо этого используйте либо [MySQLi] (http://php.net/manual/en/book.mysqli.php), либо [PDO] (http://php.net/manual/en/book.pdo.php) и [быть лучшим разработчиком PHP] (http://jason.pureconcepts.net/2012/08/better-php-developer/). –

+0

[PHP-MYSQL TUTORIAL] (https://www.udemy.com/php-mysql-tutorial/) его хорошая форма, чтобы понять все это ... – aldanux

ответ

0

относительно этого конкретного вопроса, для чего вам нужны строки? если вы просто хотите, чтобы напечатать их сделать print_r ($ строка), и они будут там, если вы хотите сделать что-то с ними сделать цикл по каждому элементу, как это

foreach($row as $k=>$cell) 
{ 
    //do something with cell 
} 

но много других людей скажут вам, используйте PDO.

+0

ладно спасибо! есть ли хорошие учебники PDO? – Mike

+0

Я уверен, что если вы google для учебников PDO, вы найдете много. Это не так сложно, только когда вы начинаете учиться, не бойтесь использовать подготовленные заявления, так как они делают PDO потрясающим. Начните простой проект и посмотрите документацию php.net, это все, что вам нужно. Удачи. – Dexa

+0

так PDO будет лучше, чем MySQLi? – Mike

0

Вы можете использовать mysql_fetch_array() вместо mysql_fetch_assoc(), и вы сможете использовать индексы вместо имен, однако в любом случае заказ не гарантируется, если вы не определяете его самостоятельно в своем запросе, но в зависимости от того, что вы хотите сделать с результатами, это может помочь.

Стандартный наг: Используйте MySQLi.

+0

Рафаэль говорит, что использование «MySQLi»/Dexa говорит «PDO» - что я должен сейчас использовать? – Mike

+0

Я бы рекомендовал PDO. Если вы захотите перейти в другую базу данных в будущем, PDO может сократить большую работу. Может помочь статья о [PDO vs. MySQLi] (http://net.tutsplus.com/tutorials/php/pdo-vs-mysqli-which-should-you-use/). – zedfoxus

+0

MySQLi ближе к старым функциям MySQL, в то время как PDO, очень отличается, если вы начинаете с разработки PHP/MySQL, выберите PDO, если вы используете миграцию, а старое приложение использует MySQLi. – Rafael