| Autor | Správa |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: Ut 18.12.07 20:48 |   |
| kód: | for($a=1; $a<=4; $a++):
$odoslane=mysql_query("INSERT INTO vyrobky (typ,nazov,foto,vyr_cislo,rozmery,von_vybav".$a.",vnu_vybav".$a.") VALUES ('".$typ."','".$_POST["nazov"]."','".$_POST["kat"]."','".$_FILES['foto']['name']."','".$_POST["vyr_c"]."','".$_POST["rozmery"]."','".$_POST["von_vybav".$a]."',,'".$_POST["vnu_vybav".$a]."');");
endfor; |
proste ci mozem pouzit cyklus for v spojeni s mysql inak hlasi mi to: | kód: | | You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''')' at line 1 | dakujem |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
p360t
 Skúsený užívateľ
 Založený: 30.05.2006 Príspevky: 1775 Bydlisko: BA - EASTSIDE
 | Zaslal: Ut 18.12.07 22:21 |   |
Hm, neviem prečo, ale skutočne nenávidím dlhé riadky...
| kód: |
for($a=1; $a<=4; $a++){
$odoslane = mysql_query("
INSERT INTO vyrobky
(typ, nazov, foto, vyr_cislo, rozmery, von_vybav".$a.", vnu_vybav".$a.")
VALUES
('".$typ."', '".$_POST["nazov"]."', '".$_FILES['foto']['name']."',
'".$_POST["vyr_c"]."', '".$_POST["rozmery"]."', '".$_POST["von_vybav".$a]."',
'".$_POST["vnu_vybav".$a]."');");
}
| Aha, už viem prečo - pretože sú neskutočne neprehľadné!
Tuším si mal len 2 čiarky za sebou. Jo a ešte najprv hovoríš, že tabuľka vyrobky má len 7 stĺpcov, ale kŕmiš ju ôsmimi (podľa všetkého je navyše $_POST['kat'])...
A ešte taká drobnosť, keďže to používaš v cykle, buď to sprav tak, že kontroluješ správnosť zadania do DB, alebo sa vykašli na premennú $odoslanie. Tj. buď:
| kód: |
for($a=1; $a<=4; $a++){
$odoslane = mysql_query("
INSERT INTO vyrobky
(typ, nazov, foto, vyr_cislo, rozmery, von_vybav".$a.", vnu_vybav".$a.")
VALUES
('".$typ."', '".$_POST["nazov"]."', '".$_FILES['foto']['name']."',
'".$_POST["vyr_c"]."', '".$_POST["rozmery"]."', '".$_POST["von_vybav".$a]."',
'".$_POST["vnu_vybav".$a]."');");
if(!$odoslane){
echo "Chyba DB!"; // mozes si ju vypisat cez mysql_error();
break;
}
}
|
alebo
| kód: |
for($a=1; $a<=4; $a++){
mysql_query("
INSERT INTO vyrobky
(typ, nazov, foto, vyr_cislo, rozmery, von_vybav".$a.", vnu_vybav".$a.")
VALUES
('".$typ."', '".$_POST["nazov"]."', '".$_FILES['foto']['name']."',
'".$_POST["vyr_c"]."', '".$_POST["rozmery"]."', '".$_POST["von_vybav".$a]."',
'".$_POST["vnu_vybav".$a]."');");
}
|
Získaš tak na kontrole, alebo ako v druhom prípade, ušetríš štipku systémových zdrojov. |
_________________ [quote="A. S. Tanenbaum"]The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.[/quote] | |
    |
 |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: Ut 18.12.07 22:53 |   |
no ja tam mam overovanie ale to s tym nesuvisi cize som to tu nedal to kat som tam zabudol dat, a dik naozaj som tam mal len tie dve ciarky ale prvykrat som pouzil mysql_query v spojeni s cyklom for takze som sa to hned pytal, sry za zbytocnu temu ale aj tak dik
//edit: nakoniec som zistil ze mi to aj tak nefunguje tak ako som to chcel(cize mi urobi styri riadky a do kazdeho vlozi inu hodnotu von_vybav a vnu_vybav) cize to prerobim asi normalne ze tam bude mat napisane von_vybav1, von_vybav2... alebo da sa to nejako zjednodsit, tak aby som nemusel takto pisat ale tiez aby mi to robilo jeden riadok?? ak ano tak pls ako?? thx |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
p360t
 Skúsený užívateľ
 Založený: 30.05.2006 Príspevky: 1775 Bydlisko: BA - EASTSIDE
 | Zaslal: Ut 18.12.07 22:59 |   |
Skús len inak zapísať to spájanie reťazcov cez bodky (napr. najprv to spojiť a potom dosadiť do $_POST[$spojeny_retazec]). |
_________________ [quote="A. S. Tanenbaum"]The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.[/quote] | |
    |
 |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: Ut 18.12.07 23:14 |   |
a nedali by sa nejako vyuzit viacrozmerne polia? ak ano ako? lebo polia velmi neovladam |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
p360t
 Skúsený užívateľ
 Založený: 30.05.2006 Príspevky: 1775 Bydlisko: BA - EASTSIDE
 | Zaslal: Ut 18.12.07 23:19 |   |
To čo sa tu využíva sú asociatívne polia, tj. indexom nie je integer ale reťazec. Ako dalo by sa to napísať aj pre viacrozmerné, ale ničomu by to nepomohlo. |
_________________ [quote="A. S. Tanenbaum"]The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.[/quote] | |
    |
 |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: Ut 18.12.07 23:21 |   |
no mozno ze pri dlhom spekulovani by sa mi to podarilo napisat v spojeni viacrozmernych poli+cyklu for ale skor napisem asi tak trosku "lamersky" aj tak dik poskusam este tie poli a auvidim, dajm aj vediet  |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
Tominator
 Zablokovaný užívateľ
 Založený: 21.02.2007 Príspevky: 4009
 | Zaslal: Po 24.12.07 21:20 |   |
Drako sorry ale neodpustím si:
milujem tvoje príspevky, prečo?
1, Názov: môže to byť takto? al. Fungovalo by to?
(ak povedz rovno že nefunguje alebo si to skus!)
2, kód nie je nepriehľadný, kód je extrémne neprehľadný
(typ, nazov, foto, vyr_cislo, rozmery, von_vybav".$a.", vnu_vybav".$a.") je po:
A, nepodstatné
B, zbytočná hlúposť, ako načo tam komponuješ to $a, keď predsa musíš mať definované polia |
| |
  |
 |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: Ut 25.12.07 13:33 |   |
ja tvoje prispevky milujem tiez stale napises asi o 2-3 tyzdne potom ako sa to vyriesy a stale uplne mimo temy... a vacsinou to aj skusam, az jak mi to nejde tak sa pytam a do nazvu theardu nenapisem predsa cely kod |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
Tominator
 Zablokovaný užívateľ
 Založený: 21.02.2007 Príspevky: 4009
 | Zaslal: St 26.12.07 12:09 |   |
| Drako napísal: | | ja tvoje prispevky milujem tiez stale napises asi o 2-3 tyzdne potom ako sa to vyriesy a stale uplne mimo temy... a vacsinou to aj skusam, az jak mi to nejde tak sa pytam a do nazvu theardu nenapisem predsa cely kod |
1, názov mohol byť napr. "Problém s 'for' v spojení s MYSQL"
2, si nereagoval
--------
jj internet mám asi tak 2-3 razy týždenne (ale teraz sú prázdniny) |
| |
  |
 |
|
Nemôžete pridávať nové témy do tohto fóra. Nemôžete odpovedať na témy v tomto fóre. Nemôžete upravovať svoje príspevky v tomto fóre. Nemôžete mazať svoje príspevky v tomto fóre. Nemôžete hlasovať v tomto fóre.
|
|