Intereting Posts
Eclipse PDT против NetBeans для разработки PHP Срок действия php cURL истекает через 120308 миллисекунд при получении X из -1 байта Cakephp 3.0 alpha2 Как сравнить новый пароль с старыми паролями? php array_merge_recursive сохранение цифровых клавиш Служба уведомлений Apple Push: сторона с сертификатом установки сервера? PHP mail () BCC – отображает только адрес получателей в заголовке To: php fputcsv и охватывающие поля Как установить eAccelerator для XAMPP на Mac OS X 10.7 Lion Как я могу заполнить массив javascript значениями из базы данных с помощью PHP? phpunit: как получить количество тестов в тестовом каталоге без запуска теста Рекурсивно цикл каждого пути массива PHP, передающий параметры при создании нового объекта, call_user_func_array для объектов ошибка разбора json-данных (значение типа java.lang.String не может быть преобразовано в json-массив) Laravel перенаправляет маршрут, но затем apache дает ошибку 404 php обрезать строку, если дольше, чем предел, и положить некоторое упущение в конце … аналогично рубину

Связывание php-формы с databse

Попытка связать мою php-форму с моей базой данных, но она не работает. Может ли кто-нибудь найти ошибку? Он продолжает давать мне ошибку разбора в части кода «INSERT INTO».

<?php $link = mysql_connect($localhost,$root,$xxxxxxx); if (!$link) { die("Could not connect"); }; print "Connected to the database server"; $db_selected = mysql_select_db($module_evaluation_results, $link); if (!$db_selected) { die("Could not use the database"); }; print "selected a DB"; $result = mysql_query (INSERT INTO module_evaluation_results (faculty, date, modulecode, moduletitle, school, modulebookcontent, moduleorganisation, lrcmaterials, moduledifficulty. modulesimilarity, contentinteresting, previousknowledge, understoodassessmentrequirements, assessmentmethod, moduleleader, ML_interestforsubject, ML_contentclear, ML_appropriateteachingpace,ML_reachableforadvice, ML_helpfulfeedback, lecturer1, L1_interestforsubject, L1_contentclear, L1_appropriateteachingpace, L1_reachableforadvice, L1_helpfulfeedback, lecturer2, L2_interestforsubject, L2_contentclear, L2_appropriateteachingpace, L2_reachableforadvice, L2_helpfulfeedback, hoursofindependentstudy, overallattendance, bestfeaturesofmodule, improvemodule) VALUES ($faculty, $date, $modulecode, $moduletitle, $school, $modulebookcontent, $moduleorganisation, $lrcmaterials, $moduledifficulty, $modulesimilarity, $contentinteresting, $previousknowledge, $understoodassessmentrequirements, $assessmentmethod, $moduleleader, $ML_interestforsubject, $ML_contentclear, $ML_appropriateteachingpace, $ML_reachableforadvice, $ML_helpfulfeedback, $lecturer1, $L1_interestforsubject, $L1_contentclear, $L1_appropriateteachingpace, $L1_reachableforadvice, $L1_helpfulfeedback, $lecturer2, $L2_interestforsubject, $L2_contentclear, $L2_appropriateteachingpace, $L2_reachableforadvice, $L2_helpfulfeedback, $hoursofindependentstudy, $overallattendance, $bestfeaturesofmodule, $improvemodule)); if (!$result) { die('Invalid query: ' . mysql_error()); } print "run a query against the DB"; mysql_close($link); ?> 

Почему в вашем запросе нет цитат? копировать и вставлять проблему? или это ошибка?

т.е.

 $result = mysql_query ("INSERT INTO module_evaluation_results (faculty, date, modulecode, moduletitle, school, modulebookcontent, moduleorganisation, lrcmaterials, moduledifficulty. modulesimilarity, contentinteresting, previousknowledge, understoodassessmentrequirements, assessmentmethod, moduleleader, ML_interestforsubject, ML_contentclear, ML_appropriateteachingpace,ML_reachableforadvice, ML_helpfulfeedback, lecturer1, L1_interestforsubject, L1_contentclear, L1_appropriateteachingpace, L1_reachableforadvice, L1_helpfulfeedback, lecturer2, L2_interestforsubject, L2_contentclear, L2_appropriateteachingpace, L2_reachableforadvice, L2_helpfulfeedback, hoursofindependentstudy, overallattendance, bestfeaturesofmodule, improvemodule) VALUES ($faculty, $date, $modulecode, $moduletitle, $school, $modulebookcontent, $moduleorganisation, $lrcmaterials, $moduledifficulty, $modulesimilarity, $contentinteresting, $previousknowledge, $understoodassessmentrequirements, $assessmentmethod, $moduleleader, $ML_interestforsubject, $ML_contentclear, $ML_appropriateteachingpace, $ML_reachableforadvice, $ML_helpfulfeedback, $lecturer1, $L1_interestforsubject, $L1_contentclear, $L1_appropriateteachingpace, $L1_reachableforadvice, $L1_helpfulfeedback, $lecturer2, $L2_interestforsubject, $L2_contentclear, $L2_appropriateteachingpace, $L2_reachableforadvice, $L2_helpfulfeedback, $hoursofindependentstudy, $overallattendance, $bestfeaturesofmodule, $improvemodule)"); 

Пересмотренный ответ 🙂

Эта функция была на php.net по ddlshack по адресу http://au2.php.net/mysql_query. Я протестировал ее локально с некоторыми изменениями, чтобы отразить ваш пользовательский интерфейс и его работу, возможно, это поможет упростить ваш вызов вставки

 function mysql_insert($table, $inserts) { $values = array_map('mysql_real_escape_string', array_values($inserts)); $keys = array_keys($inserts); return mysql_query('INSERT INTO `'.$table.'` (`'.implode('`,`', $keys).'`) VALUES (\''.implode('\',\'', $values).'\')'); } 

Используется так;

  mysql_insert( 'module_evaluation_results', array( 'col1' => rand(10,100), 'col2' => 'string1', 'col3' => 'string2', 'col4' => rand(10,100), 'col5' => 'string3', )); 

Так mysql_insert (имя таблицы, массив (имя столбца, значение));

Мой полный тестовый файл php следующий

 $link = mysql_connect('127.0.0.1:3306', 'test-user', 'test-pass'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; $db_selected = mysql_select_db("test", $link); if (!$db_selected) { die("Could not use the database"); }; mysql_insert( 'module_evaluation_results', array( 'col1' => rand(10,100), 'col2' => 'string1', 'col3' => 'string2', 'col4' => rand(10,100), 'col5' => 'string3', )); mysql_close($link); function mysql_insert($table, $inserts) { $values = array_map('mysql_real_escape_string', array_values($inserts)); $keys = array_keys($inserts); return mysql_query('INSERT INTO `'.$table.'` (`'.implode('`,`', $keys).'`) VALUES (\''.implode('\',\'', $values).'\')'); } 

Я думаю, проблема может быть вашим именем таблицы? плюс сложность запроса, как написано, может быть некоторыми опечатками, но этот код определенно работает. Вставки можно запускать несколько раз и проще читать и кодировать, если это помогает

вместо

 moduledifficulty. modulesimilarity 

использование

 moduledifficulty, modulesimilarity