Avatar billede axel21 Juniormester
13. juni 2007 - 11:05 Der er 14 kommentarer

Hjælp til og + and

Hej..

Vil gerne sådan at ikke alle felter skal være udfyldt, men nogen skal. Jeg har prøvet med ||og && men kan ikke rigtigt få det til at virke..


Har dette script.

if($_POST['navn'] !="" || $_POST['att'] !="" && $_POST['adresse'] !="" && $_POST['postnr'] !="" && $_POST['by'] !="" || $_POST['telefon'] !="" || $_POST['fax'] !="" || $_POST['email'] !="" || $_POST['web'])
Avatar billede jensgram Nybegynder
13. juni 2007 - 11:11 #1
Nogle paranteser vil gøre tricket - ligesom i matematik :)

Hvad er det du vil opnå?


if($_POST['navn'] !="" || ($_POST['att'] !="" && $_POST['adresse'] !="" && $_POST['postnr'] !="" && $_POST['by'] !="") || $_POST['telefon'] !="" || $_ ....
Avatar billede axel21 Juniormester
13. juni 2007 - 11:14 #2
Jeg vil have at man skal have navn, adresse, postnr, by.. Resten er valgfrit
Avatar billede erikjacobsen Ekspert
13. juni 2007 - 11:17 #3
Så lade være med at nævne dem i listen.
Avatar billede majasti Nybegynder
13. juni 2007 - 11:18 #4
Så lader du vel bare vær med at tjekke de resterende felter?

if(!empty($_POST['navn']) && !empty($_POST['adresse'] && !empty($_POST['postnr'] && !empty($_POST['by']))
{
Avatar billede axel21 Juniormester
13. juni 2007 - 11:37 #5
Kan jeg bare lade være med at nævne dem jeg ikke vil have med i scriptet?
Avatar billede jensgram Nybegynder
13. juni 2007 - 11:42 #6
Ja, du kan lade være med at nævne dem, der ikke har indflydelse på _betingelsen_ ...
Avatar billede axel21 Juniormester
13. juni 2007 - 11:45 #7
Okay jeg prøvede at fjerne dem men det virker ikke, så virker formularen ikke. Kan man ikke gøre det med matamatik som jensgram skrev? Hvordan evt.?
Avatar billede erikjacobsen Ekspert
13. juni 2007 - 11:58 #8
Hvad gør du? Hvordan virker det ikke?
Avatar billede axel21 Juniormester
13. juni 2007 - 12:33 #9
if (isset($_POST["send_x"])) {

   
        $vaerdi1 = mysql_real_escape_string($_POST['navn']);
        $vaerdi2 = mysql_real_escape_string($_POST['att']);
        Etc.

        if($_POST['navn'] !="" && $_POST['adresse'] !="" && $_POST['postnr'] !="" && $_POST['by'] !="" || $_POST['att'] !="" || $_POST['telefon'] !="" || $_POST['fax'] !="" || $_POST['email'] !="" || $_POST['web']){
    mysql_query("INSERT INTO privatpersondatabase_db (navn, att, adresse, postnr, `by`, telefon, fax, email, web) VALUES ('". $vaerdi1 ."','". $vaerdi2 ."','". $vaerdi3 ."','". $vaerdi4 ."','". $vaerdi5 ."','". $vaerdi6 ."','". $vaerdi7 ."','". $vaerdi8 ."','". $vaerdi9 ."')") or die(mysql_error());
Avatar billede erikjacobsen Ekspert
13. juni 2007 - 13:03 #10
De står jo stadig i listen i din if-sætning, 'att', 'telefon', osv.
Avatar billede axel21 Juniormester
13. juni 2007 - 14:28 #11
Jam en jeg har jo ikke fjernet dem der, tog den originale kode...
Avatar billede cronaldo Nybegynder
14. juni 2007 - 12:03 #12
if($_POST['navn'] != "" AND $_POST['adresse'] != "" AND $_POST['postnr'] != "" AND $_POST['by'] != ""){


// HVAD SKAL DER SKE?

}



Sådan ville jeg gøre, da jeg mener at have hørt, at "AND" gør siden hurtigere end && ..
Avatar billede axel21 Juniormester
03. december 2007 - 14:11 #13
smid et svar...
Avatar billede jensgram Nybegynder
03. december 2007 - 16:14 #14
cronaldo > Ja, der kan måske være tal om en _minimal_ forskel, da && har præcedens over AND ( http://dk.php.net/manual/en/language.operators.logical.php ), men jeg kunne forestille mig, at denne optimering er forsvindende ift. stort set alle andre flaskehalse etc.
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