Autor | Zpráva | ||
---|---|---|---|
symat Profil |
#1 · Zasláno: 8. 3. 2008, 19:28:58
čau lidi potřebuji pomoct.
Potřebuji udelat php script a nevim si stim rady ! sám jsem se pokoušel tvořit ale bez úspěchu. potřeboval by jsem aby se mi z databaze vypisovalo třeba jméno do textoveho pole(nebo text area) a po jeho upravení by se uložilo. Vim že je to asi jednoduche ale ja stim nemužu hnout Jsem začatečnik. |
||
orava Profil |
#2 · Zasláno: 8. 3. 2008, 20:02:37 · Upravil/a: orava
<?php
mysql_connect("localhost","login","heslo") or die (nepodarilo sa MYSQL_CONNECT); mysql_select_db("db") or die (nemas tam tu databazu); $data=mysql_query("SELECT * FROM tabulka"); $pocet=mysql_num_rows($data); for ($i=0;$i<$pocet;$i++) { $meno=mysql_result($data,$i,'meno'); ?> <form id="form1" name="form1" method="post" action="<?php $_SERVER["PHP_SELF"] ?>"> <input type="text" name="meno <? echo $i;?>" value="<? echo $meno; ?>"/> <input type="submit" name="Submit" value="Submit" /> </form> <? } ?> TOTO je na vypis do formularov |
||
orava Profil |
#3 · Zasláno: 8. 3. 2008, 20:10:21
Celkovy php script
<?php mysql_connect("localhost","login","heslo") or die (nepodarilo sa MYSQL_CONNECT); mysql_select_db("db") or die (nemas tam tu databazu); $data=mysql_query("SELECT * FROM tabulka"); $pocet=mysql_num_rows($data); for ($i=0;$i<$pocet;$i++) { $meno=mysql_result($data,$i,'meno'); ?> <form id="form1" name="form1" method="post" action="<?php $_SERVER["PHP_SELF"] ?>"> <input type="text" name="meno <? echo $i;?>" value="<? echo $meno; ?>"/> <input type="submit" name="OK" value="Submit" /> </form> <? } for ($i=0;$i<$pocet;$i++) { $meno=$_POST["meno<? echo $i ;?>"]; mysql_query("UPDATE tabulka SET meno='$meno' WHERE meno='$meno'"); ?> |
||
orava Profil |
#4 · Zasláno: 8. 3. 2008, 20:13:02
a nepojde to! lebo ked zmenis to meno tak tam take uz nebude
|
||
symat Profil |
#5 · Zasláno: 8. 3. 2008, 21:22:30 · Upravil/a: symat
Diky za rady ale když te kod upravim podle sebe tak me to nejde.Píše mi to chybu na řádku kde je </html>
<?php include ('connect.php'); //pøipojení k databázi $data=mysql_query("SELECT * FROM kontakty"); $pocet=mysql_num_rows($data); for ($i=0;$i<$pocet;$i++) { $meno=mysql_result($data,$i,'nazev'); ?> <form id="form1" name="form1" method="post" action="<?php $_SERVER["PHP_SELF"] ?>"> <input type="text" name="meno <? echo $i;?>" value="<? echo $nazev; ?>"/> <input type="submit" name="OK" value="Submit" /> </form> <? } for ($i=0;$i<$pocet;$i++) { $meno=$_POST["nazev<? echo $i ;?>"]; mysql_query("UPDATE kontakty SET meno='$nazev' WHERE meno='$nazev'"); ?> |
||
orava Profil |
#6 · Zasláno: 8. 3. 2008, 21:35:54
mas tam preklepy s $nazov a $meno
|
||
symat Profil |
#7 · Zasláno: 8. 3. 2008, 21:50:50 · Upravil/a: symat
No snad jsem to opravil vše ale vysledek je stejný
<?php include ('connect.php'); //pøipojení k databázi $data=mysql_query("SELECT * FROM kontakty"); $pocet=mysql_num_rows($data); for ($i=0;$i<$pocet;$i++) { $meno=mysql_result($data,$i,'nazev'); ?> <form id="form1" name="form1" method="post" action="<?php $_SERVER["PHP_SELF"] ?>"> <input type="text" name="nazev <? echo $i;?>" value="<? echo $nazev; ?>"/> <input type="submit" name="OK" value="Submit" /> </form> <? } for ($i=0;$i<$pocet;$i++) { $nazev=$_POST["nazev<? echo $i ;?>"]; mysql_query("UPDATE kontakty SET nazev='$nazev' WHERE nazev='$nazev'"); ?> |
||
VitaZ Profil |
#8 · Zasláno: 9. 3. 2008, 00:43:43
Máš tam hrubou chybu!
Nemůžeš ukončit parsování PHP uprostřed podmínky for, pokračovat chvilku vypisováním HTML a pak se dalším otevřením PHP parsetu pokusit dokončit PHP script. for ($i=0;$i<$pocet;$i++) { $meno=mysql_result($data,$i,'nazev'); ?> //// TADY TI PHP NESMÍ KONČIT <form id="form1" name="form1" method="post" action="<?php $_SERVER["PHP_SELF"] ?>"> <input type="text" name="nazev <? echo $i;?>" value="<? echo $nazev; ?>"/> <input type="submit" name="OK" value="Submit" /> </form> <? } /// Ale až zde! ten kód formuláře vypiš pomocí echo nebo print v PHP echo "<form id=\"form1\" name=\"form1\" method=\"post\" action=\"$_SERVER["PHP_SELF"]\"> <input type=\"text\" name=\"nazev $i\" value="\$nazev\" /> <input type=\"submit\" name="\OK\" value=\"Submit\" /> </form>"; |
||
Jack Finger Profil |
#9 · Zasláno: 9. 3. 2008, 10:04:56 · Upravil/a: Jack Finger
VitaZ
Ale může. A for není podmínka, ale cyklus. já bych spíš viděl chybu v tomhle: $nazev=$_POST["nazev<? echo $i ;?>"]; . nemá to být: $nazev=$_POST["nazev".$i]; ? |
||
Jack Finger Profil |
#10 · Zasláno: 9. 3. 2008, 10:06:56
symat
jde ti o jeden záznam z databáze, nebo o všechny záznamy? |
||
symat Profil |
#11 · Zasláno: 9. 3. 2008, 14:07:49
o všechy zaznamy
|
||
orava Profil |
#12 · Zasláno: 9. 3. 2008, 16:20:57
VitaZ
mozem si to skoncit kedy chcem! v tom je vyhoda PHP! symat nepojde ti to lebo ked nahradis nove meno starym a zmenis meno na nove meno kde meno = nove meno - a to tam nebude |
||
symat Profil |
#13 · Zasláno: 9. 3. 2008, 17:38:07
nepojde ti to
No nepojede :((( a tak muže mi stim nekdo poradit jak to napsat aby to jelo ???? a nemusi se ty formulaře generovat samy. Naskládal bych si třeba 10x textarea pod sebe Jmeno, Příjmení........ a vše by se tam vypsalo. Po přepsíní by se to zas uložilo. pls pls ja jsem v koncich |
||
Jack Finger Profil |
#14 · Zasláno: 9. 3. 2008, 19:07:54
zrovna jsem cosi takového dělal, zkus to použít:
<?php if(!empty($_POST['field'])){ foreach($_POST['field'] as $array => $value){ if(mysql_query("UPDATE `tabulka` SET `title` = '".$value."' WHERE `id` = ".$_POST['fid'][$array]) or die(mysql_error())){ echo 'arr:'.$array.', val:'.$value.', id:'.$_POST['fid'][$array].'<br />'; } } } $res = mysql_query("SELECT * FROM `tabulka` ORDER BY id ASC") or die(mysql_error()); ?> <form action="index.php?page=edit" method="post"> <?php $i = 0; while($row = mysql_fetch_array($res)){ echo ' <input type="hidden" name="fid[]" value="'.$row['id'].'"> <textarea name="field[]">'.$row['title'].'</textarea> '; $i++; } ?> <input type="submit" value="Změnit!"> </form> měníš jenom názvy sloupců a tabulky ve výpisu a dotazech. |
||
Časová prodleva: 16 let
|
0