maarc93 Posted December 1, 2014 Report Share Posted December 1, 2014 Mēģinu izveidot viesnīcas mājaslapu beginner līmenī. Ir šāds kods: if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); die(); } $result = mysqli_query($con, "SELECT * FROM istaba WHERE Gultu_skaits=" + mysqli_real_escape_string($con, $gultuSkaits)) or die("Error: ".mysqli_error($con)); un izvada: Error: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1' at line 1 Kur ir problēma? Link to comment Share on other sites More sharing options...
Sasa Posted December 1, 2014 Report Share Posted December 1, 2014 koda fragments nav pilnīgs, kas rakstīts pirmajā rindiņā? Link to comment Share on other sites More sharing options...
maarc93 Posted December 1, 2014 Author Report Share Posted December 1, 2014 (edited) Kas tad tur nav pareizs? Vaicājums ir šāds - "SELECT * FROM istaba WHERE Gultu_skaits=" + mysqli_real_escape_string($con, $gultuSkaits) Mēģināju arī bez mysqli_real_escape_string. Pārbaudīju vaicājumu arī phpMyAdmin un strādā :/ Edited December 1, 2014 by maarc93 Link to comment Share on other sites More sharing options...
Kavacky Posted December 1, 2014 Report Share Posted December 1, 2014 Stringus nesummē (+), stringus konkatenē (.). Link to comment Share on other sites More sharing options...
maarc93 Posted December 1, 2014 Author Report Share Posted December 1, 2014 OMG, stulba kļūda :D Paldies! Link to comment Share on other sites More sharing options...
gurkjis Posted December 1, 2014 Report Share Posted December 1, 2014 Ja taisi no 0 , tad labāk neizmantot vecā stila mysql_* funkcijas. Labāk PHP frameworks + ORM. Bet laikam jau par vēlu, ja darbs ir iesākts... Link to comment Share on other sites More sharing options...
Roze Posted December 1, 2014 Report Share Posted December 1, 2014 Ja taisi no 0 , tad labāk neizmantot vecā stila mysql_* Labāk PHP frameworks + ORM. mysqli_ neskaitās "vecā stila". .. bez tam ko tad _Frameworks_ citu izmanto? p.s. ja vispārīgi, tad nav arī nekāda liela starpība izmantot mysql_* (izņemot to, ka lai nekristu uz nerviem "jaizoperē" (php sourcē 1 rinda) vai jāignorē NOTICE par deprecated pie connecta), jo lielākoties parasti visas PHP instalācijas ir uzliktas un tāpat strādā caur MYSQLND (MySQL Native Driver), līdz ar to nav būtiska starpība vai mysql/mysqli vai piemēram PDO. Link to comment Share on other sites More sharing options...
gurkjis Posted December 1, 2014 Report Share Posted December 1, 2014 ok par mysql_ vs mysqli_ tas tā, vairāk domāju plain queryju vietā ORM izmantot, lai ir abstraktēts pāri un tādējādi vienkāršāk lietojams. Link to comment Share on other sites More sharing options...
Roze Posted December 1, 2014 Report Share Posted December 1, 2014 ok par mysql_ vs mysqli_ tas tā, vairāk domāju plain queryju vietā ORM izmantot, lai ir abstraktēts pāri un tādējādi vienkāršāk lietojams. Nu kā uz to skatās, ir reizēm diezgan smieklīgi, ka programmētājs kurbulē frameworku ar 10k rindiņām, lai pieslēgtos pie DB un izpildītu 1-nu kveriju, jo savādāk neprot vai vienkārši nespēj paskaidrot kā un kas vispār notiek :) Mācību (sākotnējā) procesā personīgi šķiet, ka no visādiem frameworkiem labāk turēties pa zināmu distanci .. Link to comment Share on other sites More sharing options...
gurkjis Posted December 1, 2014 Report Share Posted December 1, 2014 (edited) Mācību procesā tas var būt vertīgi, zināt low-level lietas, lai programmētājam veidotos plašāks skatījums uz lietām. Bet no produktivitātes viedokļa, ir izdevīgi sēdēt pēc iespējas augstāk. Man personīgi neinteresē, ka mašīna mazliet lēnāk darbosies, kad darbinās kodu no 10k source. Kad ātruma problēmas duras acīs ,tad sāku domāt. Tas ir no sērijas - premature optimization is root of all evil. Edited December 1, 2014 by gurkjis Link to comment Share on other sites More sharing options...
F3llony Posted December 1, 2014 Report Share Posted December 1, 2014 gurkjis, Link to comment Share on other sites More sharing options...
Kavacky Posted December 1, 2014 Report Share Posted December 1, 2014 Kur mācību procesā noderēs ORM ja cilvēks nav pārliecināts ka pareizi ir uzrakstījis simple query? :) Ar ORM jau vienalga. :) Link to comment Share on other sites More sharing options...
gurkjis Posted December 1, 2014 Report Share Posted December 1, 2014 gurkjis, nē! Man vajag vismaz 1000 postus dabūt, tāpēc rakstīšu whatever kas ienāk prātā! Link to comment Share on other sites More sharing options...
Kemito Posted December 1, 2014 Report Share Posted December 1, 2014 Reāli dažkārt ir vienkāršāk uzrakstīt kaut kādu vaicājumu, bez ORM :D Deprecated jau neliek, tā pat, kaut kāds iemesls jau ir bijis, tapēc jau nevajag atslēgt, lai nerāda :( Link to comment Share on other sites More sharing options...
Kavacky Posted December 1, 2014 Report Share Posted December 1, 2014 Jā, iemesls ir tāds - "mēs te, PHP dev džeki, gribam šito extensiju norubīt nost, ņehuj te 3 gandrīz vienādas uzturēt, tāpēc veco nosaucam deprecated". Link to comment Share on other sites More sharing options...
Recommended Posts