rumpels Posted July 22, 2004 Report Posted July 22, 2004 (edited) luk ka izskatas piemers kursh iebazh datus bazee, izveido cepumu un aizved visu pasakumu uz to pashu lapu, lai refreshojot nepostojas velreiz: <? if ($teksts){ mysql_query("INSERT INTO guest SET vards='$vards', teksts='$teksts', pievienots=NOW( )"); setcookie ("selga", $vards); echo '<meta http-equiv="refresh" content="0; url=?id=guest">'; } ?> sekojoshi pie varda laucinja ir value="<? echo $niks;?>" ar nosacijumu ka $niks = $_COOKIE['selga']; skripts ir viena faila veidots un action notiek php_self un ticiet vai nea nav ne kukija ne value johny piemeram:) izmegjinaju uz trim serveriem un neviena neka nebija, panjemu gatavus skriptus lai izmegjinatu vai kukiji postojas un tieshi ta tur viss o.k., tatad jautajiens vai setcookie jabazh pats pirmais vai der ari pec kverija? Edited July 22, 2004 by rumpels
Kaklz Posted July 22, 2004 Report Posted July 22, 2004 Ar setCookie izceptie cepumi parādās tikai tad, kad tu attaisi krāsns durvis, jeb programmētāju valodā runājot pie nākamās lapas ielādes. Ja gribi šos cepumus dabūt neattaisot krāsns durvis, tad pašam ir jālien krāsnī, tas ir, manuāli jāuzstāda $_COOKIE['mainiigais'].
rumpels Posted July 22, 2004 Author Report Posted July 22, 2004 kaklzs es tak izvadu $niks = $_COOKIE['selga']; bet value neparada mainigo $niks:( shitais aiziet, bet ari pirmo reizi postojot shis value neatrod tikai velreiz iepostojot tas paradas tatad ja butu pec posta refresh tad butu pie pirma jau?! <? if($teksts) { setcookie ("selga", $vards); } ?> <table align="center" cellpadding="1" cellspacing="0"> <form method="POST" action="<? $php_self; ?>"> <tr> <td> <p align="right">Vārds:</td> <td> <input class="def" type="text" class="textfield" name="vards" value="<?=$_COOKIE['selga'];?>" size="20"></td> </tr> <tr> <td valign="top"> <p align="right">Teksts:</td> <td> <textarea rows="4" class="textfieldns" name="teksts" cols="103"></textarea> </td> </tr> <tr> <td> </td> <td><input type="submit" class="textfield" value="Pievienot"></td> </tr> </form> </table>
rumpels Posted July 22, 2004 Author Report Posted July 22, 2004 izskatas ja velies kadu postoshanas formu lai vel saglaba cepumus un nakama reize atrodoties shini forma ar kadu aizpilditu lauku ir jataisa divi keisi ar linku uz pirma keisa saturu !!! tad bus o.k. bet vienalga kukijs pie pirma skripta nesaglabajas vispar:(
rumpels Posted July 22, 2004 Author Report Posted July 22, 2004 o.k. viss kartiba, taisot un daroties parbraucu pari un kaut ko saprotu un talak ipashi iedziljinaties nav jegas:) paldies
bubu Posted July 22, 2004 Report Posted July 22, 2004 mysql_query("INSERT INTO guest SET vards='$vards', teksts='$teksts', pievienots=NOW( )"); Iesaku paskatīties MySQL manuālī INSERT teikuma sintaksi! :) Šitais jau nu 100 punkti nav pareizs :D
herry Posted July 22, 2004 Report Posted July 22, 2004 Nu es rakstiitu SET vards='" . $vards . "', teksts='" . $teksts . "'
bubu Posted July 22, 2004 Report Posted July 22, 2004 Bāc, tak INSERT teikums rakstāms šādi: INSERT INTO table (colon1, colon2, ....) VALUES (value1, value2, ....) a bet UPDATE rakstāms šādi: UPDATE table SET colon1 = value1, conon2 = value2, ...
herry Posted July 22, 2004 Report Posted July 22, 2004 Apskatiiju savu skriptu - tiesa kas tiesa, man shitaa raxtiits "INSERT INTO spekosimies VALUES('" . $id . "', '0','0','0','0','" . $_SESSION['vards'] . "')" Jautaajiens pa teemai - a shitaa tjipa " . $mainiigais . " nestraadaa labaak?
Aleksejs Posted July 22, 2004 Report Posted July 22, 2004 Jautaajiens pa teemai - a shitaa tjipa " . $mainiigais . " nestraadaa labaak? Tīri teorētiskā līmenī esmu dzirdējis, ka: $str = 'blablabla ' . $mainigais . ' blablabla2'; strādā ātrāk, un ir potenciāli mazāks risks uzrauties uz to, ka, ja gadījumā PHP "variable expansion" kodā ir (tiek atrasta) kāda bufera pārpildīšanās, tad to lietu var izmantot uzbrukumam (Protams, var strīdēties pretī, ka arī konkatenācijas operācijā varētu atrasties šādas problēmas, tomēr, manuprāt, konkatenāciju norealizēt ir vieglāk - tātad mazāka iespēja nokļūdīties). Bet: $str = "blablabla $mainigais blablabla2"; var pieļaut mazāk kļūdas sintaksē. No praktiskā viedokļa... domāju, ka vienaalga (-:
Kaklz Posted July 23, 2004 Report Posted July 23, 2004 (edited) mysql_query("INSERT INTO guest SET vards='$vards', teksts='$teksts', pievienots=NOW( )"); Iesaku paskatīties MySQL manuālī INSERT teikuma sintaksi! :) Šitais jau nu 100 punkti nav pareizs :D bubu, šite nu tev ir 50%/50% taisnība. SQL-92 standartā tiešām nav šādas sintakses, taču paldies MySQL, kurš to neskatoties uz neesamību standartā ir ieviesis. Saki ko gribi, bet insertus šādi ir rakstīt daudz ērtāk, kaut vai gadījumos, kad viņi ir palieli. Tev ir iespējas insertu sarakstīt apmēram šādi: foreach ($insertArray as $key => $value){ $insertPairs[] = $key . ' = "' . mysql_escape_string($value) . '"'; } $qry = 'INSERT INTO tabula SET ' . join (', ', $insertPairs); Pamēģini šādu triku izveikt ar pierasto SQL-92 standartā rakstīto sintaksi ;) Protams, savā ziņa taisnība tev būs, ja teiksi, ka ir slikti pierast pie vienas DBPS, bet iespējas ir tāpēc, lai viņas izmantotu. Es arī pirmajā reizē tieši tāpat kā tu protestēju pret šādu sintaksi, bet palasot manuāli atradu, ka tas ir legāli un mazliet aplauzos :) Edit: Nobeigumā citāts no MySQL manuāļa: INSERT [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tbl_name SET col_name={expr | DEFAULT}, ... [ ON DUPLICATE KEY UPDATE col_name=expr, ... ] Edited July 23, 2004 by Kaklz
bubu Posted July 23, 2004 Report Posted July 23, 2004 Nu jā, es vēl maziņš un dumjš... :) Daudz vēl, ko mācīties.
Recommended Posts