[PHP] Måste fylla i fält i formulär-skript!

Permalänk
Medlem

[PHP] Måste fylla i fält i formulär-skript!

Hej. Behöver något skript som kollar av så jag fyllt i alla fält (som behövs), har tidigare till små gästböcker använt ett javascript (http://www.jojoxx.net/jscript/archive/show.asp?id=23) men jobbigt med popup, funderar på att ha något med php. Någon som kan hjälpa mig med detta?

<?php $plats = isset($_GET['plats']) && intval($_GET['plats']) > 0 ? $_GET['plats'] : $_GET['plats']; include("db.php"); mysql_connect($db_host, $db_user, $db_pass); mysql_select_db($db_db); // Kolla om bokningsplatsen är upptaget // Checkar $sql = "SELECT status FROM platser WHERE id ='$plats'"; $result = mysql_query($sql) or exit(mysql_error()); while ($row = mysql_fetch_array($result)){ if($row['status'] == 'bokad'){ echo "Platsen du försökte boka är tyvärr upptaget."; exit; } elseif($row['status'] == 'avaktiverad'){ echo "Platsen du valt är avaktiverad, var god och välj en annan plats."; exit; } else { // Annars skriver vi ut formuläret om platsen varken är bokad eller avaktiverat.. print '<form method="post" action="boka_add.php" name="boka"> <table style="text-align: left; width: 250px; height: 340px;" border="0" cellpadding="5" cellspacing="0"> <tr> <td>Namn:</td> <td><input name="namn"></td> </tr> <tr> <td>Mail:</td> <td><input name="mail"></td> </tr> <tr> <td>Adress:</td> <td><input name="adress"></td> </tr> <tr> <td>Postnummer:</td> <td><input name="postnummer"></td> </tr> <tr> <td>Postort:</td> <td><input name="postort"></td> </tr> <tr> <td>Telefon:</td> <td><input name="telefon"></td> </tr> <tr> <td>Mobil:</td> <td><input name="mobil"></td> </tr> <tr> <td>Personnummer:</td> <td><input name="personnummer"></td> </tr> <tr> <td>Nickname:</td> <td><input name="nickname"></td> </tr> <tr> <td>Clan:</td> <td><input name="clan"></td> </tr> <tr> <td>Plats:</td> <td><input value="'.$plats.'" readonly="readonly" name="plats"></td> </tr> </table> <input type="submit" name="Boka" value="Boka Platsen!"> </form>'; }} ?>

Alla fält utom clan ska vara ett måste. Och person nummer ska vara ett giltligt, inte bara 10siffror utan helst att den kollar, kanske är för svårt? Mail måste vara en gitlig mail, och man måste ange telefon, (ej mobil)

Någon som kan hjälpa mig med detta?

//Micke

Visa signatur

Stationär » Amd Athlon64 X2 4800+ | Asus M2N-Sli Deluxe | 2048mb ram | BFG 8800GTS OC 320mb | Hiper Type-R Modular 580w Black | WD Raptor 74gb + 200gb + 250gb + 250gb + 500gb

Permalänk
Medlem

Det borde väll bara vara att kontrollera personnumret med andra uppgifter. Vet inte så bra hur personnummer funkar, men näst sista siffran är udda på killar och jämn på flickor, så det skulle ju kunna vara en sak den kollar. Emailen har jag inte sett nåt ställe som har en riktig kontroll på, det är bara att det inte är åäö med och sen ska kan kunna skriva a@b.c på nästan alla email rutor som du kan fylla i på internet.

Visa signatur

Dur ru - dum.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Basti
Det borde väll bara vara att kontrollera personnumret med andra uppgifter. Vet inte så bra hur personnummer funkar, men näst sista siffran är udda på killar och jämn på flickor, så det skulle ju kunna vara en sak den kollar. Emailen har jag inte sett nåt ställe som har en riktig kontroll på, det är bara att det inte är åäö med och sen ska kan kunna skriva a@b.c på nästan alla email rutor som du kan fylla i på internet.

Personnummer fungerar på något sånt sätt, men borde finnas färdiga skript som kollar detta. Lunarstorm har ju! Nemen.. Med mail har det där javascript jag länkade till: "this.match(/^([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/)"
dvs nått@nått.nått, iallafall något sådant... så man inte bara kan skriva bajs eller nått!

Helst kanske man skulle ha med emailvarifikation (stavning?) men kanske blir för svårt att fixa...

Visa signatur

Stationär » Amd Athlon64 X2 4800+ | Asus M2N-Sli Deluxe | 2048mb ram | BFG 8800GTS OC 320mb | Hiper Type-R Modular 580w Black | WD Raptor 74gb + 200gb + 250gb + 250gb + 500gb

Permalänk
Medlem

Re: [PHP] Måste fylla i fält i formulär-skript!

Citat:

Ursprungligen inskrivet av McMoj
Och person nummer ska vara ett giltligt, inte bara 10siffror utan helst att den kollar, kanske är för svårt?

man kan alltid komma runt även en sådan sak. kolla detta tex

Nu är vi inte helt chanslösa om vi vill strö lite grus i storebrors datorer. Det är ju till stor del vi själva som matar in uppgifterna när vi fyller i vårt personnummer och andra data i en oändlig rad med blanketter. Vi har idag rätt att byta både för- och efternamn så varför skulle vi inte kunna variera vårt personnummer? Omväxling förnöjer. Om du slumpmässigt ändrar din kod så kommer datorn att slå bakut, men om du vet hur ett personnummer är uppbyggt så kan du hitta på flera nummer som datorn aningslöst sväljer. Ett personnummer har 10 siffror där den sista är en kontrollsiffra och den måste stämma för att datorn ska acceptera numret. Vi kan ta Linda Ednarssons personnummer som exempel för att visa hur kontroll- siffran räknas fram. Hennes nummer är 750218-2749. Under de nio första siffrorna sätter vi växelvis en tvåa och en etta. Det är viktigt att vi börjar med en tvåa. Så här: 7 5 0 2 1 8 - 2 7 4 2 1 2 1 2 1 - 2 1 2 Nu skall vi multiplicera varje siffra i Lindas nummer med den tvåa eller etta som står under och skriva svaren nederst. Så här: 7 5 0 2 1 8 - 2 7 4 x x x x x x - x x x 2 1 2 1 2 1 - 2 1 2 = = = = = = = = = 14 5 0 2 2 8 4 7 8 Nu summerar vi siffrorna i svaren, EN OCH EN, och det blir: 1+4+5+0+2+2+8+4+7+8 = 41 Svaret blir alltså 41. Nu slopar vi tiotalssiffran och vi får en 1:a kvar. Av detta förstår vi att kontrollsiffran i personnumret skall vara en 9:a. Kontrollsiffran utgör skillnaden mellan 1 och 10 vilket ju är 9. Hade du fått en 3:a på slutet skulle kontrollsiffran blivit 7. En 8:a hade givit en 2:a. En nolla förblir en nolla. Ponera nu att den goda Linda skulle vilja lura datorerna. Hon måste då ändra sitt personnummer på två ställen för att kontrollsiffran fortfarande skall bli 9. Om hon vill vara lite yngre kan hon uppge sig vara född år 76. Sedan kan hon välja månad 01 istället för 02. Hon får då det nya numret som lyder: 760118-2749. För säkerhets skull så råder jag henne till att kolla en extra gång så att allt stämmer. Vi gör om uträkningen: 7 6 0 1 1 8 - 2 7 4 x x x x x x - x x x 2 1 2 1 2 1 - 2 1 2 = = = = = = = = = 14 6 0 1 2 8 4 7 8 Vi summerar nedersta raden och finner att de blir 41 igen. Vi tar bort tiotalet och får 1 kvar, vilket ger 9 som kontrollsiffra. Datorn kan känna sig blåst.

Visa signatur

Är det inte jag, så är det någon annan...
WGS84 Lat/Long: N 60º 23' 28.12" E 15º 40' 14.24"
RT90: X=6697030, Y=1492584

Permalänk

Detta kanske kan hjälpa dig med lite javascript:

<HEAD>

<SCRIPT LANGUAGE="JavaScript">

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
function fixElement(element, message) {
alert(message);
element.focus();
}
function isMailReady(form) {
var passed = false;
if (form.fullname.value == "") {
fixElement(form.fullname, "Information saknas i fältet NAMN!");
}
else if (form.email.value.indexOf("@") == -1 ||
form.email.value.indexOf(".") == -1) {
fixElement(form.email, "Ange en giltig epostadress i fältet EPOSTADRESS!");
}
else if (form.message.value == "") {
fixElement(form.message, "Du har inte skrivit något meddelande!");
}
else {
passed = true;
}
return passed;
}
// End -->
</SCRIPT>

</HEAD>

Permalänk
Medlem

Re: Re: [PHP] Måste fylla i fält i formulär-skript!

Citat:

Ursprungligen inskrivet av Garnet
man kan alltid komma runt även en sådan sak. kolla detta tex

ja det vet jag. har sett den där förut!
Men liksom för att få det mer seriöst, att man måste ange XXXXX-XXXX och inte bara kan skriva nått. och att sista siffrorna stämmer in med helst, inget måste.

EDIT: Vill helst ha som många andra sidor har, att när man trycker på skicka/boka så kommer det upp avd jag glömt att fylla i.. ev med annan färg! Iofs brode det vara javascript eller dylikt, men går väl använda php men då måste sidan laddas om och texten printas/echo'as ut?

Visa signatur

Stationär » Amd Athlon64 X2 4800+ | Asus M2N-Sli Deluxe | 2048mb ram | BFG 8800GTS OC 320mb | Hiper Type-R Modular 580w Black | WD Raptor 74gb + 200gb + 250gb + 250gb + 500gb