Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 06:49 16.05.24 
Компютри и Интернет
   >> PHP
*Кратък преглед

Тема Губене на променлива  
Авторzezo (Нерегистриран)
Публикувано15.01.07 23:57



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

$day1 = $_POST['day1'];
$day2 = $_POST['day2'];
$mount1 = $_POST['mount1'];
$mount2 = $_POST['mount2'];
$year1 = $_POST['year1'];
$year2 = $_POST['year2'];
//Execute query
$query = "select * from novini where day1>=$day1 and mount1>=$mount1 and year1>=$year1 and day1<=$day2 and mount1<=$mount2 and year1<=$year2 order by id";

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

$qu = "update qry set qry='$query' where id=1";
mysql_query($qu);
echo $query;

И ето тук се явява проблемът. ECHO принтва правилно заявката включвайки всички променливи $DAY1, $DAY2 и т.н., но в полето QRY в базата данни, където слагам заявката е приело всичко без стойностите на горепосочените 6 променливи.
Ако някоя от пременливите я заменя с примерно
$pr = 1;
и тази променлива я заменя навсякъде с променливата $DAY1 примерно, нейната стойност ще бъде записана навсякъде.
Истината е че пробвах много варианти и изключвах грешки от които може да се е получило това, но нищо не става. Дори мисля че направих някаква малка формичка и скриптче да пробвам дали през тях ще успея да въведа някаква променлива и СТАНА???? Въобще незнам какво се обърква.
Останалата част от кода в скрипта не е грешна, защото пробвах въпросните 6 променливи като ги замених с други и всичко работи, но стане ли на въпрос за тези взети през POST нищо не става. Стойностите си се приемат, но когато трябва да отидат в база данни нищо не става!

Моля някой да помогне! Писна ми да пия аспирини! Сигурно е нещо идиотско, което не мога да видя!



Тема Re: Губене на променливанови [re: zezo]  
Автор Bълk (умора няма)
Публикувано16.01.07 02:44



хм... поне селекта та ти връща сет ако нямаш друга идея това е до цкл ... ама къде са ти кавичките?



Тема Re: Губене на променливанови [re: zezo]  
Авторпxп шмaтka (Нерегистриран)
Публикувано16.01.07 10:41



update qry set qry='$query' where id=1???


Имаш таблица и поле с едно и също име. Не ескейпваш данните от POST-а. Тва че ти се губела някава променлива не е най-големия ти проблем.



Тема Re: Губене на променливанови [re: пxп шмaтka]  
Авторzezo (Нерегистриран)
Публикувано16.01.07 11:17



Какво значи "Ескейпваш"?
Всъщност еднаквите имена не са проблем.
Всичко работи, но ако не приравнявам променливите от POST. Ако тези променливи не взимат данните от ПОСТ-а примерно така:
$day1 = 0;
$day2 = 0;
$mount1 = 0;
$mount2 = 0;
$year1 = 0;
$year2 = 0;
всичко си работи, но щом ги взимам от ПОСТ те се приравняват, но не влизат в записа за база данни и то само когато го вмъквам в таблицата. Ще дам пример.
Пак споменавам че другите неща са си в ред и работят! Проблемът е че тези променливиминат ли през ПОСТ, ECHO принтва правилно заявката, но когато искам да я запиша в базата данни тя се записва без тези променливи, въпреки че те са приели своите стойности!



Тема Re: Губене на променливанови [re: zezo]  
Автор edembg (Ученик)
Публикувано16.01.07 12:34



Опитай това:

$day1 = int_val(trim($_POST['day1']));

.....


$qu = "update qry set qry='".addslashes($query)."' where id=1";

Мисля, че това е начина.

Успех

И най-ярките личности си плащат тока.


Тема Re: Губене на променливанови [re: edembg]  
Авторzezo (Нерегистриран)
Публикувано16.01.07 13:59



Лошо! И така не става! ДАже пробвах всякакви комбинации от предложеното, но нищо не се получава.



Тема Re: Губене на променливанови [re: zezo]  
Авторzezo (Нерегистриран)
Публикувано16.01.07 14:00



Само да поясна, че дори като записвам заявката и в текстови файл пак не се записват тези 6 променливи!



Тема Re: Губене на променливанови [re: zezo]  
Авторzezo (Нерегистриран)
Публикувано16.01.07 20:43



Проблемът е оправен! Оказа се че вградените в един HTML файл CSS стилове по някакъв начин объркват РНР-то, понеже в началото на скрипта принтвах горната част на HTML в която имаше от каскадните стилове. След като ги направих да се зареждат от външен файл, проблемът изчезна. Дори започна да ми прави проблем при въвеждането на запис в базата данни, да въвежда два записа, като единият е с нужните данни, а другият празен. Горепосоченият проблем предизвикваше и това. Нямам си на идея поради каква причина!



Тема Re: Губене на променливанови [re: edembg]  
АвторMordred (Нерегистриран)
Публикувано17.01.07 17:03



Не ми било addslashes(), най ми било mysql_real_escape_string().




*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.