Avatar billede techboy992 Praktikant
07. oktober 2012 - 01:29 Der er 15 kommentarer og
1 løsning

Hente en variable fra en settings fil

Jeg har foelgende i min settings.php

/* user id for links og admin functions*/
$settings['user_id']='HujAw8Ra';

Hvor dan kan jeg hente den i mit script med Php commando i en mysql where Komando

Mit script:
$result = mysql_query("SELECT * FROM Click where folder=''.$user_id.''")

Men giver fejl:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/awc24h/public_html/click/HujAw8Ra/index.php on line 549

Hvis jeg aendre det til:
$result = mysql_query("SELECT * FROM Click where folder='HujAw8Ra'")
Virker det fint, men traels at skulle finde variablen hver gang man saetter en ny bruger op

Selve bund scriptet er cc count hvor jeg arbejder med nogle aendringer til at lave et ppc script
Avatar billede lclemens Nybegynder
07. oktober 2012 - 01:41 #1
$user_id = $settings['user_id'];
$result = mysql_query("SELECT * FROM Click where folder='$user_id'");
Avatar billede techboy992 Praktikant
07. oktober 2012 - 01:52 #2
Kan forstaa variablen til at kalde er '.$user_id.'

Men bruger jeg variablen faar jeg ikke noget fra databasen

$result = mysql_query("SELECT * FROM Click where folder='['$user_id']'");
Avatar billede techboy992 Praktikant
07. oktober 2012 - 01:56 #3
Tusinde tak det virkede
kan du lave en svar traad saa du kan faa dine point

weeee :D :D :D :D
Avatar billede lclemens Nybegynder
07. oktober 2012 - 01:57 #4
Prøv med min udgave :-)
Avatar billede lclemens Nybegynder
07. oktober 2012 - 01:57 #5
:-)
Avatar billede lclemens Nybegynder
07. oktober 2012 - 01:58 #6
En anden ting: hvilke tegn kan user_id bestå af?
Avatar billede lclemens Nybegynder
07. oktober 2012 - 02:04 #7
Det er nemlig vigtigt, at man har styr på indholdet af sine variabler inden de indsættes i sådan en sql.
Avatar billede olebole Juniormester
07. oktober 2012 - 15:39 #8
<ole>

Koden er forældet og alt for usikker. I dag bruger man ikke længere PHP's MySQL-API, som er alt for usikkert (fejlkonstrueret) og i mange situationer langsomt.

I dag bruger man (og det har man faktisk gjort længe) prpared statements under MySQLI eller PDO. Prøv at læse denne guide om MySQLI

/mvh
</bole>
Avatar billede techboy992 Praktikant
07. oktober 2012 - 19:06 #9
alfametic and nummermetic characterts no special metics
Avatar billede techboy992 Praktikant
07. oktober 2012 - 19:12 #10
Ole i det her tilfaelde var det kun til at vise links som var tildelt en user fra databasen. og koden er som du ser er det en genereret code.

og til et specielt admin panel der er password sikret med php og mysql system, til at vise nulstillings links maaanedligt.

Venlig Hilsen
Brian Olsen
Avatar billede olebole Juniormester
07. oktober 2012 - 19:26 #11
Nej, det er det, der er hele pointen: Hvis du bruger gammeldags/forældet, er der ikke noget i din applikation, som er 'password sikret'. Det betyder ikke noget, hvad meningen med koden er 'i dette tilfælde'. Din applikation er en lækkerbidsken for enhver hacker-noob.

Det gamle MySQL-API er rystende usikkert, hvorfor det ikke længere bruges til ny kode - og langt de fleste steder er man godt i gang med at skrive gammel kode om til tidssvarende og sikker kode  *o)

En anden ting: Forbinder du til databasen med sammen bruger og password, når en bruger 'bare læser sider' på dit site - og når du administrerer sitet? I så fald har du også sat vand over til alvorlige sikkerhedshuller på dét felt
Avatar billede olebole Juniormester
07. oktober 2012 - 19:28 #12
Ups ... der skulle stå: "Hvis du bruger gammeldags/forældet kode, er der ikke noget i din applikation, som er 'password sikret'"
Avatar billede techboy992 Praktikant
07. oktober 2012 - 20:47 #13
vi bruger generet koder til alt og alle mysqldatabaser har password generet koder som er forskellige.

Pasword scriptet vi bruger er et script for sig selv som redirect til de andre sider hvor der er indsat en headder saa hvis ikke looget ind faar du bare en no access fil og bliver bedt om at logge ind.

Den user_id er ikke noget nogen kan bruge til noget den er kun til at liste nogle links fra databasen som er tildelt den enkelte user.
For at kunne liste kun de links der er relateret til brugeren, Saa click counteren kan taelle rigtigt.

Du kan jo proeve om du kan faa adgang til scriptet her: http://awc24h.com/click/HujAw8Ra/ , som du ser bruger jeg ogsaa generet coder til mappe structur, for ekstra sikkerhed.

Men for at give dig ret saa skal kode normalt laves opdateret,og det hyrer jeg mig normalt ud af , jeg er totalt newbee i script codning og finder som regel bare script og til passer dem til mit brug. Ligenu betaler jeg 390 $ om maaneden til mit main site, for codning og host af siden.
Avatar billede olebole Juniormester
07. oktober 2012 - 22:28 #14
Tja ... $390 svarer til 2-4 udviklingstimer, så når hostingen er trukket fra, er der ikke meget tilbage til den månedlige udvikling/vedligeholdelse.

De ting, du nævner, ændrer ikke noget ved det, jeg skrev. At I bruger genererede passwords til jeres databaser, samt at disse har forskellige passwords, betyder heller ikke nødvendigvis noget for sikkerheden.

Det er stadig et faktum, at PHP's MySQL-API er usikkert og forældet. Du kan gøre, hvad somhelst 'for ekstra sikkerhed'. Når selve din databasekommunikation er usikker, er din applikation usikker.

Dine diger kan være 150 meter høje og 30 meter tykke. Hvis bare to meter i stedet består af en bræddevæg, har du sat vand over til en alvorlig oversvømmelse!  *o)

Det er ikke uden grund, at folkene bag PHP selv fraråder at bruge MySQL-API'et til ny kode og i stedet anbefaler prepared statements med MySQLI eller PDO.

Derudover er det ekstremt vigtigt, at den bruger, der logges ind i databasen med, kun har adgang til at udføre de nødvendige handlinger på databasen. Når en bruger bare skal læse dynamiske sider, må den MySQL-profil, der forbindes til databasen med, kun kunne udføre SELECT kommandoer - ikke INSERT, UPDATE, DROP, ALTER, el.lign.
Avatar billede techboy992 Praktikant
07. oktober 2012 - 23:59 #15
Ja hvis skulle have en dansker til at udvikle og hoste saa vill jeg nok ikke kunne vaere med laengere. men nu bruger jeg Filipinske kraefter i min udvikling af siden saa jeg faar meget for mine penge.

Ville aldrig bruge et dansk website firma til at tage sig af min side, for dyrt, iforhold til alle andre lande pga af den hoeje skat i Danmark.

Det du siger der vil jeg kigge naermere paa, men som sagt,sa er jeg helt ny i kodning og bare at faa noget til at virke var svaert, jeg vil selfoelig laere alt hvad jeg kan, og forhaabentlig blive noget bedre til at programere php og mysql med tiden.

Tak for dine raad

Hilsen
Brian
Avatar billede olebole Juniormester
08. oktober 2012 - 01:47 #16
Man kan også sagtens hyre billige kodere i Danmark - men de skriver også usikker og uprofessionel kode. Tidssvarende, sikker og professionelt skrevet kode koster penge. Og så er det med kode som med alt muligt andet: Lidt godt er bedre end meget skidt  *o)

Specielt, når du er ny i PHP/MySQL, kan det betale sig at begynde med MySQLI eller PDO med det samme. Så skal du ikke bruge tid og energi på at lære det to gange. Held og lykke med projektet  =)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester