Существует небольшая проблема, когда я создаю новую таблицу в phpmyadmin с новыми именами полей. Я использую цикл for, пытаясь вставить данные для имен полей. Но по какой-то причине я получаю ошибкуКак вставить новое имя для столбца в базу данных
«У Вас есть ошибка в вашем SQL синтаксиса, обратитесь к руководству, что соответствует версии сервера MySQL для правильного синтаксиса, чтобы использовать вблизи«[0] VARCHAR (30) «на линии 3».
Вот мой код:
include 'simple_html_dom.php';
include ('connection.php');
function getsquad($url, $tablename){
$html = file_get_html($url);
$player = array();
foreach($html->find('td[align=left]') as $element) {
if ($element->children(0)) { // work only when children exists
array_push($player ,$element->children(0)->innertext);
}
}
$length = count($player);
for($i = 0;$i<=$length;$i++){
// Create a MySQL table in the selected database
mysql_query("CREATE TABLE $tablename(
player[$i] VARCHAR(30)")
or die(mysql_error());
}
echo "Table Created!";
}
$Squad = new squad();
$Squad->getsquad('site', 'Players');
?>
Я знаю, что первая часть моей функции работает, поэтому я не думаю, что это ошибка PHP, но не 100% уверен.
Именование столбца 'player [n]' невозможно. Какова ваша цель? Создание отдельной таблицы для каждого игрока кажется плохим дизайном базы данных, возможно, вам захочется пересмотреть этот подход. –
Я пытаюсь получить имена игроков и помещать их в одну таблицу. – Nic