Seneste forumindlæg
Køb / Salg
 * Uofficiel Black/White liste V3
Login / opret bruger

Forum \ Programmering og webdesign \ Programmering
Denne tråd er over 6 måneder gammel

Er du sikker på, at du har noget relevant at tilføje?

Hjælp til simpel PHP

Af Super Supporter Siepher | 27-10-2010 09:25 | 1339 visninger | 15 svar, hop til seneste
Hej HOL'ere! Håber jeg kan få lidt hjælp til den her. Jeg har en formel hvor felterne skal udfyldes, og hvis de er udfyldt skal den gemme dataene i en tekst fil. Det virker skam fint, problem med dette er at hvis alle felter ikke er udfyldt, så skriver den kun at navn ikke er udfyldt, og hvis navnet ikke er udfyldt skriver den email ikke er udfyldt osv. Med andre ord, den tager kun en af gangen. Nogen smart måde at sætte den op til at køre dem alle igennem? if(isset($_POST['submit'])- ) { if (!empty($_POST["name"])) if (!empty($_POST["email"])) if (!empty($_POST["message"])) if (!empty($_POST["address"])) if (!empty($_POST["phone"])) { $name = date('l jS \of F Y h:i:s A ').$_POST['name'].' wrote'."\r\n"; $email = "Email: ".$_POST['email']."\r\n"; - $message = "Message: ".$_POST['message']."\r\n"; - $address = "Address: ".$_POST['address']."\r\n"; - $phone = "Tel.: ".$_POST['phone']." "; - $write = fopen('data.txt','a+') or exit("Unable to open the file"); if($write != null) { fwrite($write,$name); fwrite($w- rite,$email); fwrite($write,$message); - fwrite($write,$address); fwrite($write,$phone- ); } fclose($write); echo "Data added! "; } else { - echo 'Phone is not filled out.'; } else { echo 'Address not filled out.'; } else { echo 'Message not filled out.'; } else { echo 'Email not filled out.'; } else { echo 'Name not filled out.'; } }
--
The things you own end up owning you. Chuck Palahniuk (1962 - ), Fight Club, 1996
#1
Siepher
Super Supporter
27-10-2010 09:26

Rapporter til Admin
Den gik lidt galt. Her er den ordentligt opstillet. http://pastebin.com[...]
--
The things you own end up owning you. Chuck Palahniuk (1962 - ), Fight Club, 1996
#2
Rasmus
Gæst
27-10-2010 09:31

Rapporter til Admin
Det kan jeg godt fikse når jeg kommer hjem .. :)
--
Gæstebruger, opret dit eget login og få din egen signatur.
#3
Siepher
Super Supporter
27-10-2010 09:34

Rapporter til Admin
Står desværre og skal bruge det hurtigst muligt. :/ Men tak alligvel!
--
The things you own end up owning you. Chuck Palahniuk (1962 - ), Fight Club, 1996
#4
Deathie
Super Supporter
27-10-2010 09:51

Rapporter til Admin
Lige uden at have gennemtænkt det mere så kunne en lidt bedre løsning nok være først at se alle felterne igennem. Hvis et af felterne ikke er sat så sætter du en boolean (feks isFinished) til false og hver af de værdier der ikke er sat gemmes i en string. Når den har løbet alle værdier igennem gemmer den infoen hvis isFinished=true og ellers udskriver den string med værdier ikke sat. Jeg koder ikke normalt i php, men det burde være muligt. Kode kan jeg dog ikke lige give dig. Håber det er muligt at læse ud fra teksten ellers vil jeg godt skrive lidt pseudokode.
--
#5
TejZ
Mega Supporter
27-10-2010 09:56

Rapporter til Admin
Hvis f.eks. der er 2 felter der ikke er udfyldt, så vil du have den til at sige at disse 2 felter ikke er udfyldt? Hvorfor benytter du ikke javascript til dette?
--
Indtast cool signatur her.
#6
Siepher
Super Supporter
27-10-2010 10:09

Rapporter til Admin
#5 - Ja. Fordi opgaven er at få det til at funkle med PHP.
--
The things you own end up owning you. Chuck Palahniuk (1962 - ), Fight Club, 1996
#7
TejZ
Mega Supporter
27-10-2010 10:10

Rapporter til Admin
Altså normalt ville jeg ligge det ansvar til javascript, om at smide svar til brugeren, at de mangler at udfylde et felt, også i php lave én if sætning, der tjekker om der er noget i alle felter, hvis bare et af dem er tomt, så sker der intet.
--
Indtast cool signatur her.
#8
Solfar
Mega Supporter
27-10-2010 10:14

Rapporter til Admin
#4 Har helt ret, du skal bruge en boolean = true på felterne og en = false hvis de er null, så burde du få den korrekte println udfor det tomme felt.
--
GTX 260 896 GDDR3, 4 GB Corsair Dominator, TX650, AMD 64 X2 6000+, G11, G9, Creative Fatal1ty, Samsung SyncMaster 226CW.
#9
TejZ
Mega Supporter
27-10-2010 10:36

Rapporter til Admin
http://pastebin.com[...] Kunne være en løsning. Nu kommer error beskederne i en lang string, det kan man selvfølgelig godt tweake :) Lige en anden ting - du kan bruge single quotes når du echo'er, så skal du ikke escape alle de double quotes. eks. echo 'Hello World'; Derudover HTML mæssigt, så er font ikke noget man bruger mere. Der css man istedet.
--
Indtast cool signatur her.
#10
Siepher
Super Supporter
27-10-2010 10:42

Rapporter til Admin
#9 - Underligt nok kommer den med: Parse error: parse error in C:\wamp\www\projekt\side2.php on line 40 Jeg kan dog ikke se nogen fejl?
--
The things you own end up owning you. Chuck Palahniuk (1962 - ), Fight Club, 1996
#11
Siepher
Super Supporter
27-10-2010 10:47

Rapporter til Admin
Ligemeget, mig der redigerede i den forkerte fil, duh.
--
The things you own end up owning you. Chuck Palahniuk (1962 - ), Fight Club, 1996
#12
Siepher
Super Supporter
27-10-2010 11:03

Rapporter til Admin
Den fungerer ikke rigtig. http://pastebin.com[...] = Notice: Undefined variable: error_msg in C:\wamp\www\projekt\side2.php on line 29 Derefter printer den alle fejlmeddelserne, selvom jeg ikke har udfyldt eller trykket submit.
--
The things you own end up owning you. Chuck Palahniuk (1962 - ), Fight Club, 1996
#13
TejZ
Mega Supporter
27-10-2010 11:11

Rapporter til Admin
Der manglede et afsluttende tuborgtegn.. Plus dit tuborgtegn ved post submit, skal være over variablerne brugt i if sætningen.. http://pastebin.com[...]
--
Indtast cool signatur her.
#14
Siepher
Super Supporter
27-10-2010 11:51

Rapporter til Admin
#13 - Fandt fejlen selv, men tak alligevel. Nu har jeg justeret det du havde sendt, samt justeret resten projektet, og det hele virker perfekt. 1000 tak for hjælpen! :)
--
The things you own end up owning you. Chuck Palahniuk (1962 - ), Fight Club, 1996
#15
PerS
Monsterbruger
01-11-2010 18:28

Rapporter til Admin
Godt det virker, ellers skulle du se på noget 'form validation' i javascript
--
verdammte Quantenspringerei.

Opret svar til indlægget: Hjælp til simpel PHP

Grundet øget spam aktivitet fra gæstebrugere, er det desværre ikke længere muligt, at oprette svar som gæst.

Hvis du ønsker at deltage i debatten, skal du oprette en brugerprofil.

Opret bruger | Login
NYHEDSBREV
Afstemning


ANNONCE