Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  PHP function ei lisa andmeid tabelisse returniga märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
brixxx
Lõuapoolik
Lõuapoolik
brixxx

liitunud: 04.01.2012




sõnum 28.05.2013 19:25:17 PHP function ei lisa andmeid tabelisse returniga vasta tsitaadiga

Kui kirjutan sellise funktisooni, siis ei lisa andmeid tabelisse:

function handicraft_insert($insert) {

if (isset($_POST['lisa'])) {

$insert = mysql_query(" INSERT INTO handicraft.aruanne VALUES ('".ucfirst($_POST['toode'])."', '".$_POST['hind']."',
'".$_POST['hkogus']."', '".$_POST['hkuupäev']."', '".ucfirst($_POST['kellele'])."',
'".$_POST['kkuupäev']."', '".$_POST['kkogus']."', '".$_POST['summa']."') ")
OR die ('Failed: ' . mysql_error());

}

return $insert;

}


Kui kirjutan nii, siis lisab andmeid tabelisse, aga annab teate "Notice: Undefined variable: insert in C:\Users\Dell\Documents\xampp\htdocs\projektid\handicraft\handicraft_insert.php on line 66";

function handicraft_insert($insert) {

if (isset($_POST['lisa'])) {

$insert = mysql_query(" INSERT INTO handicraft.aruanne VALUES ('".ucfirst($_POST['toode'])."', '".$_POST['hind']."',
'".$_POST['hkogus']."', '".$_POST['hkuupäev']."', '".ucfirst($_POST['kellele'])."',
'".$_POST['kkuupäev']."', '".$_POST['kkogus']."', '".$_POST['summa']."') ")
OR die ('Failed: ' . mysql_error());

}

}

handicraft_insert($insert);


Ma ei oska, siin enam midagi teha, olen netis vaadanud, aga seal liiga keeruliseks aetud see.
tagasi üles
vaata kasutaja infot saada privaatsõnum
Redikate
HV veteran
Redikate

liitunud: 30.12.2005




sõnum 28.05.2013 20:45:06 vasta tsitaadiga

Oh kui halb... Esiteks palun kasuta vähemalt code tage mis on mõeldud spetsiaalselt koodi näitamiseks foorumis või siis syntax="php" tagi...
Teiseks ütleb ju error 100% ära mis viga on. Isegi rea numbri ütleb (kusjuures sinu antud koodis pole sellise rea numbriga rida olemas)

Aga eks ma mängin siis selgeltnägijat ja arvan et rida 66 on see :
php:
  1. handicraft_insert($insert);


ja kui silm kinni panna ning ära unustada kuidas koodi kirjutatakse, siis su notice peaks ära kaotama selline lahendus:
php:
  1. $insert = "";
  2. handicraft_insert($insert);


Miks sa seda muutujat sinna üldse sisse annad, sellest ma aru ei saa. Miks see esimene funktsioon andmeid andmebaasi ei lisa? "lihtsalt ei lisa" ei ole selgitus. Kas sa funktsiooni üldse välja kutsud? Saad errori? $_POST['lisa'] on ikka olemas?

Ja need "neti" näited on ilmselt tehtud vähe korralikumalt, turvalisemalt, ilusama koodiga ning töötavamana, sellepärast tunduvadki keerulised.

E: Ahjaa, unustasin seda ka mainida:

mysql_query — Send a MySQL query
This extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information.

Vot sulle punast teksti.

_________________
http://nodejs.org/
"I'm also a person. Programming is just one thing I do."
Kommentaarid: 34 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 33
tagasi üles
vaata kasutaja infot saada privaatsõnum
brixxx
Lõuapoolik
Lõuapoolik
brixxx

liitunud: 04.01.2012




sõnum 29.05.2013 00:52:42 vasta tsitaadiga

Võtan teadmiseks, nüüd sain korda.
tagasi üles
vaata kasutaja infot saada privaatsõnum
gynterk
HV kasutaja

liitunud: 17.01.2004




sõnum 30.05.2013 15:45:34 vasta tsitaadiga

Ja üks asi veel, mitte mingil juhul ei tohi kirjutada POST/GET/jms kasutaja poolt sisestatavaid andmeid otse andmebaasi. Lugemismaterjali siin ja siin (filtritest siin).
Kommentaarid: 5 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 5
tagasi üles
vaata kasutaja infot saada privaatsõnum
gloom
Kreisi kasutaja
gloom

liitunud: 15.07.2002




sõnum 04.06.2013 09:59:00 vasta tsitaadiga

Tundub, et puuduvad ka igasugused turvakontrollid ja andmebaas võtab vastu mistahes sisestatud infot.
Kommentaarid: 29 loe/lisa Kasutajad arvavad:  :: 1 :: 2 :: 23
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  PHP function ei lisa andmeid tabelisse returniga
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.