Gå til innhold

PHP·pub - Programming With Attitude - and beer


Anbefalte innlegg

Hvordan burde jeg gjør det om jeg skal få inn en $_POST som skal legges i en SQL-tabell?

Jeg prøvde meg på noe sånnt:

$tittel = $_POST['tittel'];
$besk = $_POST['besk'];
(...)
$query = "INSERT into wishlist VALUES ( , $tittel, $besk)";

 

Men fungerte ikke helt som det skulle.

 

EDIT: Måtte sette på NULL(trodde den gjorde det automatisk). :)

$tittel = $_POST['tittel'];
$besk = $_POST['besk'];
(...)
$query = "INSERT into wishlist VALUES ( NULL, '$tittel', '$besk')";

Endret av Gakkakk
Lenke til kommentar
Videoannonse
Annonse
Hvordan burde jeg gjør det om jeg skal få inn en $_POST som skal legges i en SQL-tabell?

Jeg prøvde meg på noe sånnt:

$tittel = $_POST['tittel'];
$besk = $_POST['besk'];
(...)
$query = "INSERT into wishlist VALUES ( , $tittel, $besk)";

 

Men fungerte ikke helt som det skulle.

 

EDIT: Måtte sette på NULL(trodde den gjorde det automatisk). :)

$tittel = $_POST['tittel'];
$besk = $_POST['besk'];
(...)
$query = "INSERT into wishlist VALUES ( NULL, '$tittel', '$besk')";

Du burde alltid angi hvilke felter du skal sette inn i, da slipper du forvirring. Se for deg at du senere endrer mysql-tabellen, da har du en kjip jobb foran deg med mindre du har angitt hvilke felter du setter verdier inn i.

 

INSERT INTO wishlist ( title, description ) VALUES ( '$tittel', '$besk');

Lenke til kommentar

Hvor mange spørringer mener dere er akseptabelt per sidevisning for ett CMS?

 

 

Holder på å skrive ett, men begynner å mistenke at den er litt vel ineffektiv. For å vise forsia (når man er innlogget så klart) gjør den 7 spørringer...

 

Er dette for mye?

Bør/kan jeg gjøre noe som ikke krever for store endringer i koden min?

 

SELECT * FROM settings;

SELECT * FROM sessions WHERE ip = \'127.0.0.1\';

SELECT * FROM `users` WHERE id = \'1\' LIMIT 1;

SELECT * FROM menu WHERE class <= \'8\';

SELECT * FROM menu WHERE type = \'0\' AND class <= \'8\';

SELECT * FROM menu WHERE type = 1 AND parent = \'3\' ORDER BY position;

SELECT * FROM news ORDER BY id DESC LIMIT 10;

 

 

 

 

Jeg vet dette ikke er en supporttråd, men dette er egentlig ikke noe problem, så jeg føler den ikke fortjener sin egen tråd.

 

 

Trenger ikke noe konkret, bare litt tanker rundt dette :)

 

 

EDIT: Jeg kan gå over å erstatte * med feltene jeg trenger, men det gjør jeg når jeg er mer ferdig. Er "Pre Alpha" :p

Endret av ze5400
Lenke til kommentar
Hvor mange spørringer mener dere er akseptabelt per sidevisning for ett CMS?

 

 

Holder på å skrive ett, men begynner å mistenke at den er litt vel ineffektiv. For å vise forsia (når man er innlogget så klart) gjør den 7 spørringer...

 

Er dette for mye?

Bør/kan jeg gjøre noe som ikke krever for store endringer i koden min?

 

SELECT * FROM settings;

SELECT * FROM sessions WHERE ip = \'127.0.0.1\';

SELECT * FROM `users` WHERE id = \'1\' LIMIT 1;

SELECT * FROM menu WHERE class <= \'8\';

SELECT * FROM menu WHERE type = \'0\' AND class <= \'8\';

SELECT * FROM menu WHERE type = 1 AND parent = \'3\' ORDER BY position;

SELECT * FROM news ORDER BY id DESC LIMIT 10;

 

 

 

 

Jeg vet dette ikke er en supporttråd, men dette er egentlig ikke noe problem, så jeg føler den ikke fortjener sin egen tråd.

 

 

Trenger ikke noe konkret, bare litt tanker rundt dette :)

 

 

EDIT: Jeg kan gå over å erstatte * med feltene jeg trenger, men det gjør jeg når jeg er mer ferdig. Er "Pre Alpha" :p

 

Ikke mange CMSer tenker så mye på antall spørringer dessverre. Jeg har utviklet en god del rundt Drupal, og der ligger antall spørringer rundt 30-300 pr. side, alt etter type innhold som vises, moduler som brukes og om man er innlogget. Gjennomsnittet hos meg ligger rundt 100 vil jeg tro. (Har man en modulkonflikt, som f.eks mellom "remove_nonviewable_menu_items" og "localizer", kan man raskt komme opp i noen tusen.)

Er database og webserver på samme fysiske maskin, er ikke overheaden ved mange enkle spørringer så alvorlig, men er de på separate maskiner kan man fort komme opp i flere titalls millisekunder bare på nettverksoverhead. Så kommer oppslaget i databasen i tillegg.

 

For å komme tilbake til saken, så virker ikke 7 så veldig mange akkurat, men poenget er egentlig ikke antall i seg selv, men at spørringene gjør jobben, og at du ikke unødvendig gjentar deg selv. Det er noe i det folk sier om "premature optimization is the root of ..."

Lenke til kommentar
  • 2 uker senere...

Er det i det heletatt mulig å åpne ei fil for skriving på ei bestemt linje? La oss si jeg har ei fil med 30 linjer, og jeg vil oppdatere linje 25. én mulighet er å lese HELE fila i minnet, gjøre nødvendige endringer, og deretter skrive tilbake til fila, men det kan bli tungt om det er mange brukere og ei stor fil.

 

Et forsøk på å skrive til spesifikk linje ser ut til å overskrive bytes på neste linje om det nye innholdet har en lengde større enn den opprinnelige linja:

 

http://dabear.mine.nu/test/filetest.php

http://dabear.mine.nu/test/filetest.php?source=jeppsann

 

 

glem at koden er litt ulogisk og rotete :p

Endret av dabear
Lenke til kommentar

Hvis hver linje inneholder samme antall bytes er det mulig, men utover det har man bare lite valg av relativt åpenbare grunner (litt vanskelig/krevende for et OS å utvide filen midt i). Du trenger dog ikke å lese hele filen inn. Hvis du kopierer den eller gir filen nytt navn kan du lese inn linje for linje og spytte ut igjen det du ønsker av endringer.

 

Red.: Har du fast linjebredde er stikkordet fseek(...).

Endret av Ernie
Lenke til kommentar

Begynner å bli dritt lei alle disse "spill"-programmererene som ikke kan noe som helst. "Trenger kriminalitetskode.", "Trenger spilltips", "Trenger mat fordi jeg sulter ved siden av brødboksen". Det de egentlig trenger er å slutte med morsmelka og komme seg ut i verden. Kanskje de da vil forstå at ingen kommer til å lage spillet for dem, eller gi dem nok kode til å bare legge alt i en fil og la det stå til.

 

Jeg har selv programmert spill i PHP og kan med hånden på hjertet si at det ikke er spesielt vanskelig. Det krever litt prøving og feiling, særlig med tanke på tweaking av f.eks. treff-algoritmer, men det er fortsatt stort sett bare ungdomsskolematte. Det er dog mye arbeid (mer enn man først tror når man er fersk:)), men vanskelig: nei!

 

Er det bare meg, eller har antall spillspørsmål, gjerne mafiaspillspørsmål, faktisk tatt seg opp enda mer i det siste? (Hvem hadde trodd det var mulig?) Begynner nå å bli så mye etter min mening at det burde opprettes et eget underforum hvor disse trådstarerene kan legge hjernene sammen og dø av overanstrengelse, eller ihvertfall holde PHP-kategorien relativt "ren", ettersom forumstyret virkelig har trangt for å opprette et PHP-forum for de som har holdt på en stund. Evt. kan vi begynne å henvise alle til NWF, et bra tiltak, men dessverre med litt lav oppsluting.

Endret av Peter
Lenke til kommentar
Gjest Slettet+6132

Er ikke hele PHP-kategorien nokså "trenger hjelp til ...", og når man leser innlegget finner man ut at de egentlig vil at andre skal gi dem ferdig kode? Jeg har rett og slett slutta å lese PHP-kategorien.

Lenke til kommentar

Peter: Helt enig med deg. Dette er en kategori om programmering, og for min del forventer jeg da en viss innsats fra folk. Det er helt greit at folk trenger hjelp til å skrive noe kode, men da forventer jeg at vedkommende har gjort et forsøk og kan si "Jeg trenger litt hjelp med dette problemet. Det her er det jeg har klart å koke opp av kode hittil". Det vi ser i praksis er at folk ønsker ferdig kode servert gratis på et sølvfat, og ev. feil og tilpassing har de overhode ikke kunnskap til å klare. For meg er det direkte frekt. Jeg hjelper mer enn gjerne folk med de problemene de måtte ha, men en ting er å hjelpe folk, en helt annen ting er å kode, dvs. jobbe, for folk. Sistnevnte er ikke gratis ...

Endret av Ernie
Lenke til kommentar
Evt. kan vi begynne å henvise alle til NWF, et bra tiltak, men dessverre med litt lav oppsluting.

Noen spesiell grunn til at du vil videreføre problemet til norskwebforum? :)

Nei, bare at det er et tilsvarende forum, men pga. litt for lav oppslutning ikke et sted jeg henger. (Og jeg har ikke TENKT til å gjøre det, har da såpass respekt for dere og innsatsen deres der)

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...