Witam!
Moj problem zwiazany jest z przekazywaniem zmiennych w URL. Wiem, ze bylo o tym wiele na forum jednak nie moge sobie z tym poradzic.
A wiec:
pliki wyswietlane sa w zaleznosci od 'id', czyli index.php?id=pram wyswietli stronke z pamieciami ram. Wczesniej kod generujacy strone wygladal nastepujaco:
[php:1:b9f6d0e4d7]<?php
if ( $id == 'pram') { include("pliki/pram.php");}
?>[/php:1:b9f6d0e4d7]
Jednak po zrzuceniu na serwer nie dzialalo wiec zrobilem to jak trzeba czyli poprzez zmienne globalne:
[php:1:b9f6d0e4d7]<?php
if ($_GET['id'] == 'pram') { include("pliki/pram.php");}
?>[/php:1:b9f6d0e4d7]
Problem tkwi w tym, ze artykuly dodawane sa poprzez url:
[php:1:b9f6d0e4d7]<?php
koszyk.php?kod=7
?>[/php:1:b9f6d0e4d7]
gdzie kod generowany jest oczywicie dynamicznie w zaleznosci od wybranego produktu i pobierany jest z bazy danych. I wlasnie to nie dziala.
Nie wiem gdzie zmienic kod php na kod zawierajacy deklaracje zmiennych globalnych, czyli $_GET...
kod z pliku pram.php dodajacy do koszyka:
[php:1:b9f6d0e4d7]<?php
echo "<a HREF="koszyk.php?kod=".mysql_result ($conn,$i,"kod")."">".Zamów;
echo "</A>";
?>[/php:1:b9f6d0e4d7]
kod pliku koszyk.php
[php:1:b9f6d0e4d7]<?php
if (isset ($numer))
{
$ilosc=$ilosc+0;
$koszyk[$numer]["ilosc"] = $ilosc;
session_register ("koszyk");
session_register ("koszyk_wielkosc");
} else
if (isset ($kod))
{
if ((!isset($il_zam)) or ($il_zam<0))
$il_zam=1;
$il_zam=$il_zam+0;
$ilosc=$il_zam;
$k1 = $kod;
if (!session_is_registered("koszyk_wielkosc"))
$koszyk_wielkosc = 0 ;
$koszyk_wielkosc++;
$koszyk[$koszyk_wielkosc]["kod"] = $kod;
if (!isset ($ilosc)) $ilosc = 1;
$koszyk[$koszyk_wielkosc]["ilosc"] = $ilosc;
session_register ("koszyk");
session_register ("koszyk_wielkosc");
};
if (!$conn = mysql_connect ($host, $user,$pass))
{
echo "Error !!! mysql_connect() error!";
}
mysql_select_db($db_name,$conn);
echo "<p>Zawartość koszyka</p>";
echo "<P><TABLE CELLPADDING=0 CELLSPACING=0 border=0 ALIGN="CENTER" width=90%>n";
echo "<TR ALIGN="CENTER">n";
echo "<TD style="border-bottom: solid 1 maroon; border-right: solid 1 maroon;" width=45%><B>Nazwa</B></TD>n";
if ($pokaz_koszyk["cena_brutto"])
echo "<TD width=20%><B>Cena brutto</B></TD>n";
echo "<TD width=10%><B>Ilość</B></TD>n";
echo "<TD width=13%><B>Wartość</B></TD>n";
echo "<TD> </TD></TR>n";
$suma = 0;
for ($i=1; $i-1<$koszyk_wielkosc; $i++)
{
$res = mysql_query ("SELECT * FROM produkty WHERE kod=".$koszyk[$i]["kod"].";") or die ("Blad! Nie można wyslac zapytania do bazy!");
if ((mysql_Num_Rows ($res)==1) and ($koszyk[$i]["ilosc"]>0))
{
echo "<TR VALIGN="CENTER">n<TD ALIGN="LEFT" style="border-bottom: solid 1 maroon; border-right: solid 1 maroon; text-indent: 5px; height: 10px;"> ";
echo mysql_Result ($res, 0, "nazwa")."</TD>";
if ($pokaz_koszyk["cena_brutto"])
echo "<TD ALIGN="RIGHT">".sprintf ("%02.0f",mysql_Result ($res, 0, "cena_brutto"))." zł. </TD>";
if ($pokaz_koszyk["cena_brutto"])
echo "<TD ALIGN="center">n";
echo "<FORM ACTION="koszyk.php" METHOD="POST">";
echo "<INPUT TYPE="TEXT" onChange="java script: submit();" NAME="ilosc" SIZE="2" MAXLENGTH="3" VALUE="".$koszyk[$i]["ilosc"]."">";
echo "<INPUT TYPE="hidden" NAME="numer" VALUE="".$i."">";
echo "</TD>";
echo "<TD ALIGN="RIGHT">".sprintf ("%02.0f",mysql_Result ($res, 0, "cena_brutto")*$koszyk[$i]["ilosc"])." zł. </TD>";
$suma = $suma + mysql_Result ($res, 0, "cena_brutto")*$koszyk[$i]["ilosc"];
echo "<TD ALIGN=CENTER><BR><INPUT align=center TYPE="BUTTON" CLASS="java" onClick="java script: ilosc.value=0;submit();" VALUE=" Usuń "></FORM></TD>";
echo "</TR>n";
};
};
echo "<TR>n";
echo "<TD ALIGN="LEFT"><B>RAZEM:</B></TD>n";
if ($pokaz_koszyk["cena_brutto"])
echo "<TD> </TD>n";
echo "<TD colspan="2" ALIGN="RIGHT"><B>";
printf ("%01.0f",$suma);
echo " zł. </B></TD>n";
echo "<TD><A HREF="koszyk.php?usun_wszystko=true">Usuń wszystko</A></TD></TR>n";
echo "</TABLE>n</P>n";
echo "<P ALIGN="CENTER"><CENTER><TABLE BORDER=0 ALIGN=CENTER><TR><TD>n";
echo"<FORM ACTION="zamow.php"><INPUT TYPE=SUBMIT value='Zamów'></FORM>";
echo "n</TD></TR></TABLE></CENTER></P>n";
?>[/php:1:b9f6d0e4d7]
Chcialbym dodac, ze kod testowany byl na win2k z easyphp v1.6 i dzialal bez zarzutu.
Prosilbym o pomoc w rozwiazaniu tego problemu. Z gory dziekuje zaodpowiedzi. Nara