Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] edytowanie rekordów ;/
Forum PHP.pl > Forum > Przedszkole
tomekpl
Witam,
mam pytanie, co może być przyczyną, że na localhoscie da sie edytować dany rekord, a na serwerze www nie questionmark.gif

dalem warunek
Kod
if($_POST['submit'] == "edytuj") {


po kliknięciu edytuj wczytuje własnie regułki Update i edytuje to co zmieniłem, no ale na serwerze ww nie działa..
redelek
Cytat(tomekpl @ 22.08.2008, 13:17:40 ) *
Witam,
mam pytanie, co może być przyczyną, że na localhoscie da sie edytować dany rekord, a na serwerze www nie questionmark.gif

dalem warunek
Kod
if($_POST['submit'] == "edytuj") {


po kliknięciu edytuj wczytuje własnie regułki Update i edytuje to co zmieniłem, no ale na serwerze ww nie działa..


Twój serwer? Jeśli tak to zobacz czy masz wszystko dobrze ustawione w PHP.INI
Jeśli ktoś inny nim administruje poproś o specyfikację PHP i zobacz dlaczego to nie działa.

Niestety ten kawałek co pokazałeś, nic nie mówi i nic z niego nie wynika. Powinno działać smile.gif

Pozdrawiam
Redelek
tomekpl
Kod
if($_POST['submit'] == "edytuj") {
$material = trim(HTMLSpecialChars($_POST['material']));
$nr_indeksu = trim(HTMLSpecialChars($_POST['nr_indeksu']));
$jedn_miary = trim(HTMLSpecialChars($_POST['jedn_miary']));
$zuzycie_jednostki = trim(HTMLSpecialChars($_POST['zuzycie_jedn']));
$zuzycie_jedn = str_replace(',', '.', $zuzycie_jednostki );
$uwagi = trim(HTMLSpecialChars($_POST['uwagi']));

if($material and $jedn_miary and $zuzycie_jedn) {
// dodajemy rekord do bazy
$ins2 ='UPDATE '."$b_materialy".'2 SET material= "'.$material.'", nr_indeksu= "'.$nr_indeksu.'", jedn_miary= "'.$jedn_miary.'", zuzycie_jedn= "'.$zuzycie_jedn.'", uwagi="'.$uwagi.'" WHERE id= '."$edit".'';
$ins = @mysql_query($ins2);
  
    if($ins) echo "<font color=yellow><b>Poprawiono</b></font><br><br>";
   } else echo "<font color=red><b>Blad</b></font><br><br>";

}
JoShiMa
Racze to kwestia zapytania jest.

Nie tak:
  1. <?php
  2. $ins2 ='UPDATE '."$b_materialy".'2 SET material= "'.$material.'", nr_indeksu= "'.$nr_indeksu.'",jedn_miary= "'.$jedn_miary.'", zuzycie_jedn= "'.$zuzycie_jedn.'", uwagi="'.$uwagi.'" WHERE id= '."$edit".'';
  3. ?>


tylko tak:
  1. <?php
  2. $ins2 ="UPDATE $b_materialy2 SET material= '$material', nr_indeksu='$nr_indeksu', jedn_miary= '$jedn_miary', zuzycie_jedn= '$zuzycie_jedn', uwagi='$uwagi' WHERE id= '$edit' ";
  3. ?>
golaod
Po pierwsze joshima z Twojego posta wynika, ze lepiej uzywac zmiennych bezposrednio w stringu co akurat nie ma znaczenia. Wieksze znaczenie ma, ze sql nie uznaje argumentow w " tylko w '.
Chyba, ze sie pomylilem i chodzilo Ci wlasnie o roznice miedzy " a ' w zapytaniu sql.
JoShiMa
Cytat(golaod @ 22.08.2008, 16:44:12 ) *
Po pierwsze joshima z Twojego posta wynika, ze lepiej uzywac zmiennych bezposrednio w stringu co akurat nie ma znaczenia.

Ma znaczenie jeśli się string konstruuje nieprawidłowo a tak właśnie jest w wersji oryginalnej. Przyjrzyj się dobrze a sam zobaczysz.


Cytat(golaod @ 22.08.2008, 16:44:12 ) *
Wieksze znaczenie ma, ze sql nie uznaje argumentow w " tylko w '.

A jednak zauwazyłeś tongue.gif Chodzi o to, że robiąc to w sposób jaki pokazałam ma się większą kontrolę nad stringiem. Oczywiście całośc można napisać tak:
  1. <?php
  2. $ins2 ='UPDATE $b_materialy2 SET material= ''.$material.'', nr_indeksu=''.$nr_indeksu.&#092;'...
  3. ?>

ale czy to jest czytelniejsze?
golaod
Nie jest czytelniejsze ale szybsze na pewno. Bo przez to "$zmienna" zmuszasz kompilator by szukal w stringu zmiennych do ktorych nastepnie trzeba sie odwolac by utworzyc nowa kopie stringu juz wlasciwego ktory dopiero zostanie wyswietlony ;] Poza tym tak jak mowie nie ma znaczenia jak zapisze a zapis wzgledem php mial dobry tylko jak zapisze wzgledem sql czyli ' a nie " jako ogranicznik pola.
JoShiMa
Cytat(golaod @ 22.08.2008, 16:55:34 ) *
Nie jest czytelniejsze ale szybsze na pewno. Bo przez to "$zmienna" zmuszasz kompilator by szukal w stringu zmiennych do ktorych nastepnie trzeba sie odwolac by utworzyc nowa kopie stringu juz wlasciwego ktory dopiero zostanie wyswietlony ;]

Kogo jak kogo, ale mnie tego uczyć nie musisz. Jednak koszt jest niewielki a wygoda w projektowaniu zapytania znaczna.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.