Forum » Izdelava spletišč » Zelo enostavna PHP skripta, ki ne dela - help :(
Zelo enostavna PHP skripta, ki ne dela - help :(
Poldi112 ::
Problem je ker ne izpise vrednosti spremenljivk, samo tale txt brez kolicine. In problem je ker nobene napake ne javi.
Bob's Auto Parts
Order Results
Your order is as follows:
tires
bottles of oil
spark plugs
koda;
orderform.html
[form action="processorder.php" method=post]
[table border=0]
[tr bgcol of =#cccccc]
[td width=150]Item[/td]
[td width=15]Quantity[/td]
[/tr]
[tr]
[td]Tires[/td]
[td align=center][input type="text" name="tyreqty" size=3 maxlength=3][/td]
[/tr]
[tr]
[td]Oilqty[/td]
[td align=center][input type="text" name="oilqty" size=3 maxlength=3][/td]
[/tr]
[tr]
[td colspan=2 align=center][input type=submit value="Submit Order"][/td]
[/tr]
[/table]
[/form]
processorder.php
[html]
[head]
[title]Bob's Auto parts - Order Results[/title]
[/head]
[body]
[h1]Bob's Auto Parts[/h1]
[h2]Order Results[/h2]
[?
echo "[p]Your order is as follows:";
echo "[br]";
echo $tireqty."tires[br]";
echo $oilqty."bottles of oil[br]";
echo $sparkqty."spark plugs[br]";
?]
[body]
[/html]
Bob's Auto Parts
Order Results
Your order is as follows:
tires
bottles of oil
spark plugs
koda;
orderform.html
[form action="processorder.php" method=post]
[table border=0]
[tr bgcol of =#cccccc]
[td width=150]Item[/td]
[td width=15]Quantity[/td]
[/tr]
[tr]
[td]Tires[/td]
[td align=center][input type="text" name="tyreqty" size=3 maxlength=3][/td]
[/tr]
[tr]
[td]Oilqty[/td]
[td align=center][input type="text" name="oilqty" size=3 maxlength=3][/td]
[/tr]
[tr]
[td colspan=2 align=center][input type=submit value="Submit Order"][/td]
[/tr]
[/table]
[/form]
processorder.php
[html]
[head]
[title]Bob's Auto parts - Order Results[/title]
[/head]
[body]
[h1]Bob's Auto Parts[/h1]
[h2]Order Results[/h2]
[?
echo "[p]Your order is as follows:";
echo "[br]";
echo $tireqty."tires[br]";
echo $oilqty."bottles of oil[br]";
echo $sparkqty."spark plugs[br]";
?]
[body]
[/html]
Primoz ::
Novejši PHPji imajo po defaultu izklopljen register_globals
There can be no real freedom without the freedom to fail.
smolep ::
Seveda, da ti ne izpiše vrednosti teh spremenljivk. Poskrbeti moraš namreč, da jih "nafilaš" z nekimi vrednostmi. Načinov kako to storiš je pa več, npr. POST/GET, COOKIE, seje ali pa čisto samosvoje rešitve s pomočjo datotek ali podatkovnih baz.
V tvojem primeru jih moraš iti iskat v seznam $POST (ne vem ali pa $_POST), npr. za $tyreqty narediš $tyreqty = $POST["tyreqty"].
Povedano zelo poenostavljeno: med menjavanjem "strani" namreč spremenljivke "izgubljajo" svoje vrednosti, zato moraš poskrbeti za prenašanje njihovih vrednosti.
Pa register_globals naj bo kar izklopljen!!
V tvojem primeru jih moraš iti iskat v seznam $POST (ne vem ali pa $_POST), npr. za $tyreqty narediš $tyreqty = $POST["tyreqty"].
Povedano zelo poenostavljeno: med menjavanjem "strani" namreč spremenljivke "izgubljajo" svoje vrednosti, zato moraš poskrbeti za prenašanje njihovih vrednosti.
Pa register_globals naj bo kar izklopljen!!
Poldi112 ::
TNX Primoz! Sem vklopil na on in zdaj dela :).
Ok, security bo malo trpel, ampak bom vsaj lahko po knjigi studiral, ker itak mi ni se nic jasno in se nocem se s tem ukvarjati.
Oglati oklepaji pa zato ker se mi je zdelo da bo jasno. Pac malo se je treba hecat ce hoces da ti jih tale forum ne prepozna kot html, pa se mi ni zdelo vredno s tem ukvarjati.
Ok, security bo malo trpel, ampak bom vsaj lahko po knjigi studiral, ker itak mi ni se nic jasno in se nocem se s tem ukvarjati.
Oglati oklepaji pa zato ker se mi je zdelo da bo jasno. Pac malo se je treba hecat ce hoces da ti jih tale forum ne prepozna kot html, pa se mi ni zdelo vredno s tem ukvarjati.
rokpok ::
Če knjiga obravnava spremenljivke z global_variables=on potem svetujem, da zamenjaš knjigo.
Rad bi bil pingvin.
Zgodovina sprememb…
- spremenil: rokpok ()
root987 ::
Malo off topic:
@Poldi112: Imaš ti to "php and mysql web development" knjigo? :-)
@Poldi112: Imaš ti to "php and mysql web development" knjigo? :-)
"Myths which are believed in tend to become true."
--- George Orwell
--- George Orwell
Zgodovina sprememb…
- spremenil: root987 ()
ThinMan ::
Ma sej je čist simpl.
// to lahko pustis pri miru, ce se pa ucis- kot v tvojem primeru pa lahko das na on,
register_globals = off
Vse kar potrebujes da ti prebere iz niza, ki si ga poslal s formo (uporabi metodo POST), v skripti pa prides do poslanih polj z
$ime = $HTTP_POST_VARS["ime"];
oziroma
$ime = $_GET["ime"];
Primer:
Imas skripto, ki ti izpise kaj uporabnik vnese v obrazec (recimo svoje ime)
To v skripti izpises z
// primer z register_globals=ON;
echo "$ime";
// register_globals=OFF
$ime = $HTTP_POST_VARS["ime"];
echo "$ime";
ali pa kar
echo $HTTP_POST_VARS["ime"];
Drugac pa ce imas knjigo ki predvideva da imas v PHP.INI nastavljen register_globals=on ni nic hidega, saj za zacetek pri programiranju je to boljse, kot pa da se ubadas z raznimi dolgimi klobasami.
LP,
FLADÉ
// to lahko pustis pri miru, ce se pa ucis- kot v tvojem primeru pa lahko das na on,
register_globals = off
Vse kar potrebujes da ti prebere iz niza, ki si ga poslal s formo (uporabi metodo POST), v skripti pa prides do poslanih polj z
$ime = $HTTP_POST_VARS["ime"];
oziroma
$ime = $_GET["ime"];
Primer:
Imas skripto, ki ti izpise kaj uporabnik vnese v obrazec (recimo svoje ime)
To v skripti izpises z
// primer z register_globals=ON;
echo "$ime";
// register_globals=OFF
$ime = $HTTP_POST_VARS["ime"];
echo "$ime";
ali pa kar
echo $HTTP_POST_VARS["ime"];
Drugac pa ce imas knjigo ki predvideva da imas v PHP.INI nastavljen register_globals=on ni nic hidega, saj za zacetek pri programiranju je to boljse, kot pa da se ubadas z raznimi dolgimi klobasami.
LP,
FLADÉ
Poldi112 ::
No, saj kasneje sem vseeno dal nazaj na off. In sem se znasel pred novo tezavo.
Rabim csv file vnesti v tabelo v mysql. Z spodnjo skripto mi dela, ampak mi ne pobere stran ", s katerimi so objete celice. Poleg tega bi rad se par kolon dodal, tako da bo za vsako vrstico najprej prvih 10 iz csv, potem pa se 3, ki bi jih vnesel preko forme.
root987: Ja. A si primer spoznal, ane :)
Trudil sem se tudi z fgetcsv (in fopen), samo tam mi niti vnos ni uspel.
Potem sem imel dosti in sem se odlocil, da danes cist v easy iz nule zacnem (tole do sedaj sem delal analizo skript od drugih).
Posem sem pa videl tale svoj post... :)
Ce se komu da pomagati ali vsaj svetovati bom hvalezen, ce ne pa tudi ni panike.
LP
Rabim csv file vnesti v tabelo v mysql. Z spodnjo skripto mi dela, ampak mi ne pobere stran ", s katerimi so objete celice. Poleg tega bi rad se par kolon dodal, tako da bo za vsako vrstico najprej prvih 10 iz csv, potem pa se 3, ki bi jih vnesel preko forme.
root987: Ja. A si primer spoznal, ane :)
<? $TABLENAME=pet; include("dbinfo.php"); mysql_connect(localhost,$username,$password); @mysql_select_db($database) or die( "Unable to select database"); $fcontents = file ('./csv/cat.csv'); for($i=0; $i<sizeof($fcontents); $i++) { $line = trim($fcontents[$i]); $arr = explode(",", $line); $sql = "insert into $TABLENAME values ('". implode("','", $arr) ."')"; mysql_query($sql); echo $sql ."<br>\n"; if(mysql_error()) { echo mysql_error() ."<br>\n"; } } ?>
Trudil sem se tudi z fgetcsv (in fopen), samo tam mi niti vnos ni uspel.
Potem sem imel dosti in sem se odlocil, da danes cist v easy iz nule zacnem (tole do sedaj sem delal analizo skript od drugih).
Posem sem pa videl tale svoj post... :)
Ce se komu da pomagati ali vsaj svetovati bom hvalezen, ce ne pa tudi ni panike.
LP
Zgodovina sprememb…
- spremenil: Poldi112 ()
Poldi112 ::
Heh, ne morem vec popravit. Skripta zdaj dela za silo, samo ne za vse vrste podatkov. Ampak zdaj picim na dopust in bom septembra mozgal naprej.
Lion27 ::
mislim ej....
mysql ima moznost importiranja direktno csv fajlov brez kaksnih php prijemov....
(probaj najprej vnesti v phpMyAdminu) ce pa mora biti programsko reseno pa si poglej tu:
http://dev.mysql.com/doc/mysql/en/LOAD_...
pozdrav
mysql ima moznost importiranja direktno csv fajlov brez kaksnih php prijemov....
(probaj najprej vnesti v phpMyAdminu) ce pa mora biti programsko reseno pa si poglej tu:
http://dev.mysql.com/doc/mysql/en/LOAD_...
pozdrav
Poldi112 ::
Load data je omejen. Edino fgetcsv zadosti mojim potrebam, da mi pobere narekovaje stran.
Pa phpmyadmin sem imel, pa se mi ni dopadel. Raje imam svojo php skripto, ki mi dela tabele.
Zdaj imam delujoco kodo za vnos v bazo, zanima pa me kako bi lahko dopovedal kodi, da naj .csv file bere sele od 10. vrstice naprej. Ker za kak pogojni stavek ne vem kam bi ga vnesel.
Pa phpmyadmin sem imel, pa se mi ni dopadel. Raje imam svojo php skripto, ki mi dela tabele.
Zdaj imam delujoco kodo za vnos v bazo, zanima pa me kako bi lahko dopovedal kodi, da naj .csv file bere sele od 10. vrstice naprej. Ker za kak pogojni stavek ne vem kam bi ga vnesel.
<?php include("dbinfo.php"); $db = mysql_connect("$host_name","$db_user","$db_password") or die("Could not connect to database!"); $result = mysql_select_db($db_name) or die("Could not select database!"); $handle = fopen("pet2.csv", "r") or die('Could not open file!'); while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $insert = "INSERT INTO $table VALUES('$data[0]','$data[1]','$data[2]')"; $res_insert = mysql_query($insert, $db) or die("Could not INSERT query!"); } fclose($handle); ?>
Zgodovina sprememb…
- spremenil: Poldi112 ()
snow ::
pred while daš en
pol za while pa:
To je taka KISS varianta.. je pa tud ziher kaka zadeva za 'previjanje' :)
$i=0;
pol za while pa:
$i++;
if($i>10){
kodavstavljanje
}
To je taka KISS varianta.. je pa tud ziher kaka zadeva za 'previjanje' :)
Random mutation plus nonrandom cumulative natural selection - Richard Dawkins
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Ne prenese spremenljivke iz enega php-ja v drugegaOddelek: Izdelava spletišč | 1237 (1140) | Looooooka |
» | php in varnostOddelek: Izdelava spletišč | 1259 (1113) | Ziga Dolhar |
» | PHP in globalne spremenljivkeOddelek: Programiranje | 1226 (1106) | neonX |
» | Php....nekaj ne delaOddelek: Izdelava spletišč | 929 (817) | cahahopie |