Re: [PHP] Need urgent help on post php long code
On Thu, April 21, 2005 12:55 am, Pieter du Toit said: I have the following code: $result = mysql_query(SELECT users.user_first_name, users.user_last_name, users.user_cell, users.user_idnom, users.user_email, users.user_adres1, users.user_adres2, users.user_pcode, users.user_city, users.user_prov FROM users WHERE users.user_id = '$user_id'); extract($row); $ewal_result = mysql_query(SELECT DECODE(ewallet.ewal_pass, '{$config[password_password]}') AS ewal_pass FROM ewallet WHERE ewallet.user_id = '$user_id'); extract($row); dprint($row); $Co_ID = $config[e_wallet][Co_ID]; $Outlet = $config[e_wallet][Outlet]; $transac = get_nextid($_SESSION[database], transacs, tran_id, tran); ! this is where i echo all my required vars to post, and i get a value for each, but when i post to the next form only $co_id and $outlet is posted !! POST variables come from the HTTP interaction. HTTP is stateless -- Nothing from one POST will get carried over to the next unless *YOU* do something to make that happen. You can pass them as HIDDEN INPUT, you can put them in your SESSION, you can hire/train a squirrel to read them and repeat them, but they ain't gonna get carried over unles YOU do it. Neither $co_id nor $Outlet is POSTed. You assign them in your script, so of course they have values. echo Admin testingbr; echo coid = .$Co_ID; echo Outlet = .$Outlet; echo user_email = .$user_email; echo ewal_pass = .$ewal_pass; echo user_id = .$user_id.$transac; echo END These other variables would work *ONLY* if you manage to transmit $user_id (used in the queries above) from page to page. input type=hidden name=Co_ID value=$Co_ID input type=hidden name=Outlet value=$Outlet input type=hidden name=UserName value=$user_email input type=hidden name=Password value=$ewal_pass input type=hidden name=Reference value=$user_id:$transac input type=hidden name=Lang value=ENG Here you are passing two variables you're going to ignore anyway ($Co_ID and $Outlet) and *NOT* passing $user_id you need in your queris, and, well, I don't really know what you are trying to do with the other four variables, but you've given me a headache. :-) Sit down with a pencil and figure out exactly what data you need to transmit from page to page, and what you can just lookup again, and where the data will come from. I say again: POST data will not propogate itself. You MUST store/propogate it in $_SESSION or as more hidden INPUT or propogate at least the $user_id so you can look up their info again. -- Like Music? http://l-i-e.com/artists.htm -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Need urgent help on post php long code
I have the following code: function display_setcom() { global $config; dsprint(display_setcom()); dprint($_SESSION[logged_in]); $user_id = $_SESSION[logged_in]; $result = mysql_query(SELECT users.user_first_name, users.user_last_name, users.user_cell, users.user_idnom, users.user_email, users.user_adres1, users.user_adres2, users.user_pcode, users.user_city, users.user_prov FROM users WHERE users.user_id = '$user_id'); if (mysql_num_rows($result) == 1) { $user_detail = check_user_details($user_id); //app.func.inc.php dprint($user_detail); if ($user_detail === true) { $row = mysql_fetch_assoc($result); dprint($row); extract($row); $ewal_result = mysql_query(SELECT DECODE(ewallet.ewal_pass, '{$config[password_password]}') AS ewal_pass FROM ewallet WHERE ewallet.user_id = '$user_id'); if (!mysql_error()) { if (mysql_num_rows($ewal_result) 0) { $row = mysql_fetch_assoc($ewal_result); extract($row); dprint($row); } } else { dprint(mysql_error()); } dprint($ewal_tosetcom); $Co_ID = $config[e_wallet][Co_ID]; $Outlet = $config[e_wallet][Outlet]; $transac = get_nextid($_SESSION[database], transacs, tran_id, tran); ! this is where i echo all my required vars to post, and i get a value for each, but when i post to the next form only $co_id and $outlet is posted !! echo Admin testingbr; echo coid = .$Co_ID; echo Outlet = .$Outlet; echo user_email = .$user_email; echo ewal_pass = .$ewal_pass; echo user_id = .$user_id.$transac; echo END p class=WARNThe following details are used for your credit card transactions,brif they are incorrect or incomplete, please go to a href=index1.php?display=detailsMy Details/a and update your details.brIf it is correct, you can click on the button below to TopUp eWallet/p form action=testvars.php method=post name=setcom table CLASS=PREDICT border=1 align=center tr class=minmaxtxt tdName:/td td class=minmaxtxtcoinput name='Name' type='hidden' maxlength='25' size='35' value=$user_first_name $user_last_name$user_first_name $user_last_name/td /tr tr class=minmaxtxt tdCellphone Number:/td td class=minmaxtxtcoinput name='Tel' type='hidden' maxlength='10' size='15' value=$user_cell$user_cell/td /tr tr class=minmaxtxt tdID Number:/td td class=minmaxtxtcoinput name='Addonfields' type='hidden' maxlength='13' size=17 value=Identity:$user_idnom$user_idnom/td /tr tr class=minmaxtxt tdAddress:/td td table border=1 class=PREDICT tr class=minmaxtxt tdStreetname Number:/td td class=minmaxtxtcoinput name='Address1' type='hidden' maxlength='255' size='15' value=$user_adres1$user_adres1/td /tr tr class=minmaxtxt tdSuburb/Area:/td td class=minmaxtxtcoinput name='Address2' type='hidden' maxlength='255' size='15' value=$user_adres2$user_adres2/td /tr tr class=minmaxtxt tdPost/Zip Code:/td td class=minmaxtxtcoinput name='Zip' type='hidden' maxlength='9' size='10' value=$user_pcode$user_pcode/td /tr tr class=minmaxtxt tdCity:/td td class=minmaxtxtcoinput name='City' type='hidden' maxlength='25' size='15' value=$user_city$user_city/td /tr tr class=minmaxtxt tdProvince/State:/td td class=minmaxtxtcoinput name='State' type='hidden' maxlength='25' size='15' value=$user_prov$user_prov/td /tr tr class=minmaxtxt tdCountry/td td class=minmaxtxtco select name=Country option value=ZASouth Africa/option /select /td /tr /table /td tr class=ROW1 /table br table class=PREDICT border=1 align=center tr class=minmaxtxtco tdTopUp Amount:/td tdinput type=text name=CC_amount /tr tr class=minmaxtxt td colspan=2 align=center input type=submit name=register value=TopUp eWallet onClick=if (!ValidAmount(setcom.CC_amount.value)) { alert('Please enter a valid amount'); return (false);}; /td /tr /table input type=hidden name=Co_ID value=$Co_ID input type=hidden name=Outlet value=$Outlet input type=hidden name=UserName value=$user_email input type=hidden name=Password value=$ewal_pass input type=hidden name=Reference value=$user_id:$transac input type=hidden name=Lang value=ENG END; if ($tosetcom === 0) { //If the user has not been registered yet. print(\t\t\tinput type=\hidden\ name=\ConfirmPassword\ value=\$ewal_pass\\n); } print(\t\t/form\n); } else { print(p class=\WARN\Your details are not complete. Please update them at a href=\index1.php?display=details\My Details/a before you can TopUp your account/p\n); } } else { $_SESSION[error] .= p class=\WARN\Could not fetch user details, please try again later./p\n; dprint(mysql_error()); } } i really need help here, have a deadline -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php