Mortenre Skrevet 31. august 2008 Del Skrevet 31. august 2008 (endret) Hello Håper det er noen snille sjeler her som kan hjelpe meg, er lenge siden jeg har kodet men tenkte jeg skulle prøve litt igjen. Lurer derfor på hvorfor denne koden ikke fungere: $s = mysql_query("SELECT av FROM status where ID = 1"); if ($s == "0") { die ("test!"); return; } else { print "test1"; } Først henter jeg ut felt "av" fra databasen. Så hvis av = 0 så skal den skrive test! hvis ikke skal den skrive test1! Men jeg får bare enten kun test1! eller test! som reslutat om jeg endrer på formelen. Noen som kan hjelpe? Endret 31. august 2008 av Mortenre Lenke til kommentar
Ernie Skrevet 31. august 2008 Del Skrevet 31. august 2008 Hvis du studerer dokumentasjonen for mysql_query finner du dette: For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error. Hvis du faktisk leser dokumentasjonen står det noen linjer lengre ned hva du må gjøre. Lenke til kommentar
Mortenre Skrevet 31. august 2008 Forfatter Del Skrevet 31. august 2008 En side jeg helt hadde glemt, takk skal du ha! Ikke att det gjorde meg så mye smartere idag. Det jeg egentlig prøver på er følgende: Om av =1 så skal content være tilgjengelig. om av =0 så skal content være stengt. Noen gode råd om hvordan jeg kan gjøre dette? Lenke til kommentar
Ernie Skrevet 31. august 2008 Del Skrevet 31. august 2008 *sukk* For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error. Altså, det du får ut er ikke en rad/array, en string e.l., men en «resource». Hvis man som sagt leser noen linjer lengre ned i dokumentasjonen så finner man dette: The returned result resource should be passed to mysql_fetch_array(), and other functions for dealing with result tables, to access the returned data.Altså må man bruke mysql_fetch_array e.l. for å få ut en eller flere rader. Lenke til kommentar
Jonas Skrevet 31. august 2008 Del Skrevet 31. august 2008 (endret) Nå er det jammen lenge siden jeg har i det hele tatt sett på MySQL-funksjonene i PHP (Bruker rammeverk; so should you), men det går vel noe i denne dur. $resource = mysql_query('SELECT av FROM status where ID = 1'); $row = mysql_fetch_assoc($resource); echo $row['av']; Som Ernie sier, så returnere mysql_query() et resultatsett, hvor du kan hente ut en rad med enten mysql_fetch_assoc eller mysql_fetch_row. Skal du hente ut flere bruker du mysql_fetch_array. Edit: Slått på målstreken.. Endret 31. august 2008 av Jonas Lenke til kommentar
Mortenre Skrevet 31. august 2008 Forfatter Del Skrevet 31. august 2008 Takker og bukker ernie og jonas! Nå fungerer det som det skal. Er lenge siden jeg har gjort det her så skjønner godt att du sukker:) Rammeverk? What's new? Eller har jeg gått glipp av noe fra starten av? Lenke til kommentar
OISNOT Skrevet 1. september 2008 Del Skrevet 1. september 2008 Rammeverk? What's new? Eller har jeg gått glipp av noe fra starten av? Det er ferdigskrevet kode som gjør jobben din raskere, lettere og ofte mer feil sikker. http://en.wikipedia.org/wiki/Software_framework http://en.wikipedia.org/wiki/Web_application_framework http://www.phpframeworks.com/ Lenke til kommentar
Garanti Skrevet 1. september 2008 Del Skrevet 1. september 2008 (endret) En nybegynner bør da ikke på ingen måte anbefales rammeverk om han har som mål å lære seg språket ordentlig. Endret 1. september 2008 av Garanti Lenke til kommentar
OISNOT Skrevet 1. september 2008 Del Skrevet 1. september 2008 En nybegynner bør da ikke på ingen måte anbefales rammeverk om han har som mål å lære seg språket ordentlig. Jo, fordi han bør bruke et rammeverk skal han bruke språket ordentlig... Det er snakk om å programmere enkelt, effektivt, sikkert og raskt. Ikke kunne hver krinkel og krok av PHP. Med et rammeverk kan du få opp en side med db tilgang mye raskere enn med "vanilla PHP". Det vil hjelpe deg med å validere data fra sluttbrukeren. Det vil ofte også hjelpe deg med å bedre din kodestil. Og ofte vil det være bedre hvis du vil lære OOP. Lenke til kommentar
Lokaltog Skrevet 1. september 2008 Del Skrevet 1. september 2008 En nybegynner bør da ikke på ingen måte anbefales rammeverk om han har som mål å lære seg språket ordentlig. Jo, fordi han bør bruke et rammeverk skal han bruke språket ordentlig... Det er snakk om å programmere enkelt, effektivt, sikkert og raskt. Ikke kunne hver krinkel og krok av PHP. Med et rammeverk kan du få opp en side med db tilgang mye raskere enn med "vanilla PHP". Det vil hjelpe deg med å validere data fra sluttbrukeren. Det vil ofte også hjelpe deg med å bedre din kodestil. Og ofte vil det være bedre hvis du vil lære OOP. Jeg er litt uenig i denne filosofien. Hvis man begynner å bruke et rammeverk tror jeg det vil ta lengre tid å forstå språket, siden man kun bruker ferdige metoder for å gjøre bestemte ting, uten å vite hva som ligger bak. Det er kanskje mer tungvint i starten, men ingen nybegynnere skriver effektiv og god kode uansett, selv om man bruker et rammeverk. Hvis man starter på scratch uten et rammeverk tror jeg man får en bedre forståelse av hva de forskjellige funksjonene i PHP gjør, hvordan PHP behandler spørringer til en database, etc. Når man forstår språkets oppbygning, så kan man begynne å bruke rammeverk for å gjøre utviklingsjobben enklere og mer effektiv. Lenke til kommentar
Alex Moran Skrevet 1. september 2008 Del Skrevet 1. september 2008 Anbefaler alle å bruke PDO framfor mysql_* funksjonene. Lenke til kommentar
Alex Moran Skrevet 1. september 2008 Del Skrevet 1. september 2008 Ehm, fordi du har en hel del flere muligheter. - Like metoder for alle databasesystemer. - Prepared statements - Det er en klasse / OOP - Enkelt å utvide - Transactions - Bra kodestil, i motsetning til MySQLi. - Den kan kaste exceptions. Pluss en hel del andre fiffigheter. Lenke til kommentar
Garanti Skrevet 1. september 2008 Del Skrevet 1. september 2008 Er dette vanligvis støttet av de fleste webservere? Lenke til kommentar
Alex Moran Skrevet 1. september 2008 Del Skrevet 1. september 2008 (endret) Det følger med PHP5, så de fleste nogenlunde greie webhotell burde støtte det. Endret 1. september 2008 av Josh Homme Lenke til kommentar
Jonhoo Skrevet 2. september 2008 Del Skrevet 2. september 2008 Må si meg enig med Lokaltog her, rammeverk er heller noe man burde begynne på når man har fått litt innsikt i språket. Da vil det være lettere å lære seg, lettere å fikse eventuelle feil som oppstår fordi du forstår måten det hele fungerer på, og du vil ha en bedre forutsetning for å legge til nye funksjoner dersom du skulle trenge det. Kan forøvrig anbefale å skrive sitt eget rammeverk dersom man er ute etter å lære ( man må selvfølgelig kunne noe PHP fra før ). Det blir kanskje ikke like veldesignet som mange av ferdigproduktene, men du lærer enormt mye, får et system som passer nøyaktig til ditt formål og vet nøyaktig hvordan det fungerer slik at både debugging og programmering går greiere... Lenke til kommentar
Peter Skrevet 2. september 2008 Del Skrevet 2. september 2008 Dersom man ikke skal bruke ORM, så burde man i det minste bruke PDO. Man kan argumentere for at PDO i seg selv er et mini-rammeverk, men på en annen side så er det ikke noen "nitti-gritty-details" som ligger under PDO som man burde kunne. Det viktigste for å lære er uansett bare å kode, og kode masse. Ikke bare skriv av, og ikke bare kopier inn fra andre, men prøv å skriv ditt eget. (NB: ikke mafiaspill) En gjestebok eller et minispill type hangman osv. er greie øvelser i starten. Lenke til kommentar
ThorB Skrevet 7. september 2008 Del Skrevet 7. september 2008 Ehm, fordi du har en hel del flere muligheter.- Like metoder for alle databasesystemer. - Prepared statements - Det er en klasse / OOP - Enkelt å utvide - Transactions - Bra kodestil, i motsetning til MySQLi. - Den kan kaste exceptions. Pluss en hel del andre fiffigheter. transaksjoner har du også i mysql funksjonene. var nytt for meg "PHP Data Objects"-kjekt å vite om i fremtiden. ser ut som det er mye forbedringer her. Lenke til kommentar
olabilen Skrevet 12. september 2008 Del Skrevet 12. september 2008 <?php $SQL = mysql_query ('SELECT av FROM table WHERE ID = 1'); if (mysql_result ($SQL,0)) { //show } Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå