[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: проблема с мускулом
San4eZ
есть вот такие зачатки кода:
<?php
Error_Reporting(E_ALL ^ E_NOTICE ^ E_WARNING);
include " ../add/constants.inc.php";

$i=0;
$fn = "excel.csv";
$fd = fopen($fn, "r") ;
while($data=fgetcsv($fd, 1000, "\n")){
foreach($data as $element);
$tempArr = explode(";",$element);
$fileArr[$i] = $tempArr;
$i++;
}
fclose($fd);
for($j=0;$j<count($fileArr);$j++){
count($fileArr[$j]);
for($k=0;$k<count($fileArr[$j]);$k++){
//echo $fileArr[$j][$k]."|";
}
//echo "<br>";
}
mysql_connect(DB_HOST, DB_USERNAME, DB_PASSWORD) or die("Не могу создать соединение ");
mysql_select_db(DB_NAME) or die(mysql_error());
for($j=0; $j<count($fileArr);$j++){
switch(true) {
case "boards":
$query = "SELECT * FROM `boards` WHERE `board_number` = $board_number";
mysql_query($query) or die(mysql_error());
if(mysql_num_rows==0){
$query1 = "INSERT INTO `boards` (`board_id`, `board_number`, `board_type`, `board_size`, `board_district`, `board_describe`, `board_num_dogov`, `board_soc`, `date_mod`) VALUES ('$fileArr[$j][4]', '$fileArr[$j][5]', '$fileArr[$j][8]','$fileArr[$j][77]','$fileArr[$j][76]',)";
mysql_query($query1) or die(mysql_error());
}

}

}

?>

Суть в чем: надо из массива выбрать нужную инфу и запихнуть в таблицу БД, на сам запрос особого внимания не обращайте, хотя если поможете и тут буду рад)
основная проблема на данный момент в том что срабатывает конструкция die, и я в упор не могу понять почему, выводит просто не могу создать соединение и все, вопрос собственно в том как узнать почему и как поправить? предвосхищая вопросы: все константы правильно прописаны в констанс.инк.пхп, путь к нему тоже верный. ПО: базовый пакет Denwer3_Base_PHP52_2010-11-07_a2.2.4_p5.2.12_zendoptimizer_m5.1.40_pma3.2.3



Спустя 3 минуты, 13 секунд (14.10.2011 - 09:45) Игорь_Vasinsky написал(а):
1.
$query = "SELECT * FROM `boards` WHERE `board_number` = " . (int)$board_number;


2. если срабатывает DIE - то почемуб не показать текст ошибки?

Какой запрос не проходит?

Спустя 28 секунд (14.10.2011 - 09:45) m4a1fox написал(а):
Ну видимо не правильно прописано соединение с БД.

Спустя 3 минуты, 2 секунды (14.10.2011 - 09:48) San4eZ написал(а):
Цитата (Игорь_Vasinsky @ 14.10.2011 - 09:45)
1.
$query = "SELECT * FROM `boards` WHERE `board_number` = " . (int)$board_number;


2. если срабатывает DIE - то почемуб не показать текст ошибки?

Какой запрос не проходит?

я бы с удовольствием показал, да вот не знаю как самому то это увидеть, нуб я пока в пхп(((

я ж писал что константы правильные, пароли тоже, путь до подключаемого файла - все в норме


а вот это вот добавление: .(int)$board_number для чего?

Спустя 1 минута, 37 секунд (14.10.2011 - 09:50) m4a1fox написал(а):
San4eZ
Цитата
я ж писал что константы правильные, пароли тоже, путь до подключаемого файла - все в норме

НУ, тогда почему не соединяется с MySQL?

Спустя 4 минуты, 44 секунды (14.10.2011 - 09:54) San4eZ написал(а):
вот я и хочу понять почему... поэтому сюда и написал

Спустя 2 минуты, 22 секунды (14.10.2011 - 09:57) m4a1fox написал(а):
San4eZ
А, ну, это, я сегодня маны не пополнял - поэтому экстрасенсорные способности - слабы. Не вижу как у вас там устроенно все..... хотя подождите..... а нет, не вижу!

Издеваетесь, да? Как мы можем понять, почему у вас не работает, если у вас нет соединение с БД!

Спустя 8 минут, 10 секунд (14.10.2011 - 10:05) San4eZ написал(а):
php_network_getaddresses: getaddrinfo failed: Этот хост неизвестен. вот эту ошибку я получаю... и не понимаю: у меня сейчас все лежит на локалхост, сервер запущен, то есть уважаемый m4a1fox был таки прав, соединения нету, но почему его нету? причем конкретно в этом скрипте, все остальное работает прекрасно

Спустя 3 минуты, 22 секунды (14.10.2011 - 10:08) m4a1fox написал(а):
San4eZ
Цитата
о почему его нету

А где есть?

Спустя 1 минута, 10 секунд (14.10.2011 - 10:10) Игорь_Vasinsky написал(а):
у тя сервер в константу не правильный введён, к гадалке не ходи.

Спустя 2 минуты, 5 секунд (14.10.2011 - 10:12) m4a1fox написал(а):
Игорь_Vasinsky
Цитата
у тя сервер в константу не правильный введён.

Погоди, погоди.

Вот ТС же писал
Цитата
причем конкретно в этом скрипте, все остальное работает прекрасно

Вот мне очень интересно на это посмотреть! smile.gif

Спустя 48 секунд (14.10.2011 - 10:12) Игорь_Vasinsky написал(а):
Видимо ТС какой то левый конфиг настраивает. У меня тока по синьке такое.

Спустя 2 минуты, 51 секунда (14.10.2011 - 10:15) San4eZ написал(а):
вот кусок скрипта из другой области но той же системы:

include "constants.inc.php";

mysql_connect(DB_HOST, DB_USERNAME, DB_PASSWORD) or die("Не могу создать соединение ");
mysql_select_db(DB_NAME) or die(mysql_error());

case "boards.add":
mysql_query('SET NAMES cp1251');
$query1 = "INSERT INTO `boards` (`board_number`, `board_type`, `board_size`, `board_district`, `board_street`, `board_describe`, `board_num_dogov`, `board_soc`, `date_mod`) VALUES ('$board_number', '$board_type', '$board_size', '$board_district', '$board_street', '$board_describe', '$board_num_dogov', '$board_soc', '$data')";
mysql_query($query1) or die(mysql_error());
if(mysql_affected_rows() != 0){
$mess = "*Данные были успешно добавлены";
}
$addr = "../".$cat."_add.html";
break;

case "boards.edit":
mysql_query('SET NAMES cp1251');
$query2 = "UPDATE `boards` SET `board_number`='$board_number', `board_type`='$board_type', `board_size`='$board_size', `board_district`='$board_district', `board_street`='$board_street', `board_describe`='$board_describe', `board_num_dogov`='$board_num_dogov', `board_soc`='$board_soc',`date_mod`='$data' WHERE `board_id`='$id' ";
mysql_query($query2) or die(mysql_error());
if(mysql_affected_rows() != 0){
$mess = "*Данные были успешно изменены";
}
$addr = "../".$cat."_".$id.".html";
break;


это кусок кода посвященный тем же бордам что и первый кусок и этой темы, вот это отрабатывает на ура, никаких ошибок, ничего. Лежит файл в той же папке что и файл с константами, так что тут путь тоже правильный

Спустя 3 минуты, 31 секунда (14.10.2011 - 10:19) m4a1fox написал(а):
И?

Спустя 41 секунда (14.10.2011 - 10:19) Игорь_Vasinsky написал(а):
ты 2 раза коннект далаешь без закрывания соединения?

Спустя 5 минут, 4 секунды (14.10.2011 - 10:25) San4eZ написал(а):
это другой файл просто. целиком его кидать не хочу: он длинный

Спустя 8 секунд (14.10.2011 - 10:25) m4a1fox написал(а):
Как то не понашенскеи скрипт накарябан!

Спустя 2 минуты, 4 секунды (14.10.2011 - 10:27) Игорь_Vasinsky написал(а):
Гадалка из меня - никакая.
Цитата
сновная проблема на данный момент в том что срабатывает конструкция die,

Где?

Спустя 2 минуты, 22 секунды (14.10.2011 - 10:29) San4eZ написал(а):
в том коде который выложен первым. Ошибку выдает: php_network_getaddresses: getaddrinfo failed: Этот хост неизвестен.

Спустя 3 минуты, 50 секунд (14.10.2011 - 10:33) Игорь_Vasinsky написал(а):
после инклуда сделай

echo DB_HOST;

Спустя 1 час, 54 минуты, 24 секунды (14.10.2011 - 12:27) Xakep написал(а):
Эта тема мне напоминает игру Что? Где? Когда? :)

ув. San4eZ, выложи сюда полностью код этого файла и код файла constants.inc.php
Так будет нам легче разобраться и помощь тебе.

З.Ы:
Цитата

include " ../add/constants.inc.php";
у тебя точно он инклудиться?

вот пока кидаешь нам код проверь одну вещь.

убери строку
Error_Reporting(E_ALL ^ E_NOTICE ^ E_WARNING);

и скорее (как мне кажеться) ты увидишь лшибку такого рода:
ning: include( ../includes/user_panel.php) [function.include]: failed to open stream: No such file or directory in Z:\home\cs-fanclub\www\index.php on line 23

Warning: include() [function.include]: Failed opening '../includes/user_panel.php' for inclusion (include_path='.;/usr/local/php5/PEAR') in Z:\home\cs-fanclub\www\index.php on line 23


если да, то значит файл в котором у тебя проблемный скрипт находится в корневой папке.
тогда меняешь
include " ../add/constants.inc.php";

на
include " ./add/constants.inc.php";


Проверь...много времени на это не уйдет...

Спустя 1 час, 41 минута, 16 секунд (14.10.2011 - 14:09) San4eZ написал(а):
с одной проблемой разобрался, сейчас появилась ошибка:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

код смотрим в самом начале темы..

upd сорь, разобрался, вопросов пока больше не имею

Спустя 2 часа, 27 минут, 29 секунд (14.10.2011 - 16:36) Xakep написал(а):
Цитата
  $query1 = "INSERT INTO `boards` (`board_id`, `board_number`, `board_type`, `board_size`, `board_district`, `board_describe`, `board_num_dogov`, `board_soc`, `date_mod`) VALUES ('$fileArr[$j][4]', '$fileArr[$j][5]', '$fileArr[$j][8]','$fileArr[$j][77]','$fileArr[$j][76]',)";


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

			$query1 = "INSERT INTO `boards` (`board_id`, `board_number`, `board_type`, `board_size`, `board_district`, `board_describe`, `board_num_dogov`, `board_soc`, `date_mod`) VALUES ('".$fileArr[$j][4]."', '".$fileArr[$j][5]."', '".$fileArr[$j][8]."','".$fileArr[$j][77]."','".$fileArr[$j][76]."')";
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.