Avatar billede svelmoe Nybegynder
29. november 2007 - 10:13 Der er 21 kommentarer og
1 løsning

$var fanger ikke text felt i span element

har ikke mere end 5 point men håber der er en der kgider hjælpe anyway :)

jeg har dem her. som skifter alt efter et forrigt valg:

<span id='opt1' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Højde:<br /><input type="text" name="hoejde">
            </span>


<span id='opt2' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
    Dybde:<br /><input type="text" name="dybde_min"><br />
        Højde:<br /><input type="text" name="hoejde">
</span>

<span id='opt3' style='display: none;'>
        Diameter:<br /><input type="text" name="diameter"><br />
        Højde:<br /><input type="text" name="hoejde">
</span>

<span id='opt4' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Dybde:<br /><input type="text" name="dybde_min"><br />
        Højde:<br /><input type="text" name="hoejde"><br />
        Sokkel:<br /><input type="text" name="sokkel">
</span>

<span id='opt5' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Dybde min:<br /><input type="text" name="dybde_min"><br />
        Dybde max:<br /><input type="text" name="dybde_max"><br />
        Højde:<br /><input type="text" name="hoejde">
</span>

<span id='opt6' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Dybde min:<br /><input type="text" name="dybde_min"><br />
        Dybde max:<br /><input type="text" name="dybde_max"><br />
</span>

<span id='opt7' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Dybde:<br /><input type="text" name="dybde_min"><br />
</span>

---

de variabler der skulle fange dem:

$bredde = $_POST['bredde'];
$dybde_min = $_POST['dybde_min'];
$dybde_max = $_POST['dybde_max'];
$hoejde = $_POST['hoejde'];

---

den fanger alle de andre felter før og efter disse kommer..

så ved ikke om det har noget med .jsén at gøre:
<script type='text/javascript'>
    var visibleElement;
    function toggleVisibleElement(val){
        if(visibleElement){
            visibleElement.style.display = 'none';
        }
        visibleElement = document.getElementById('opt' + val.split("#")[1]);
        visibleElement.style.display = 'inline';}
</script>.

på forhånd tak
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:16 #1
eller ligger span elementerne der stadig selvom de ikke vises?

så jeg har flere f.eks "bredde" hvor kun en af dem har en værdi og den poster en, som er tom?

hmm..
Avatar billede michael_stim Ekspert
29. november 2007 - 10:21 #2
Og du har dine post variabler i en form?
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:22 #3
måske noget med

if(isset($bredde)){$bredde_ins = $bredde;}
if(isset($bredde2)){$bredde_ins = $bredde2;}
if(isset($bredde3)){$bredde_ins = $bredde3;}
if(isset($bredde4)){$bredde_ins = $bredde4;}
if(isset($bredde5)){$bredde_ins = $bredde5;}
if(isset($bredde6)){$bredde_ins = $bredde6;}

eller er jeg forkert på den?
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:29 #4
nej nej de ligger ikke i formen.. de ligger sådan:

if(isset($_POST['submit'])) {

$ak_bygning = $_POST['ak_bygning'];
echo $ak_bygning;
$ak_etage = $_POST['ak_etage'];
$ak_rumnr = $_POST['ak_rumnr'];
$type = $_POST['type'];
$type2 = $_POST['type2'];
$bredde = $_POST['bredde'];
$dybde_min = $_POST['dybde_min'];
$dybde_max = $_POST['dybde_max'];
$hoejde = $_POST['hoejde'];
$sokkel = $_POST['sokkel'];
$diameter = $_POST['diameter'];
$kommentar = $_POST['kommentar'];
$antal = $_POST['antal'];
$kombi = $_POST['kombi'];osv..
Avatar billede nielle Nybegynder
29. november 2007 - 10:30 #5
Input-felter skal ligge i en form ellers bliver de ikke sendt nogen somhelst steder ved submit.
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:30 #6
det gør de også. det er bare et udsnit af koden
Avatar billede michael_stim Ekspert
29. november 2007 - 10:31 #7
Tænkte nu mere på dine spanelementer hvor dine postvariabler ligger ;o)
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:33 #8
nårh.. heh. ja de ligger i en <form></form> så det er ikke det.. den poster også felter før og efter mine <span></span>'s fint.
Avatar billede nielle Nybegynder
29. november 2007 - 10:35 #9
Du har givet alle sammen navnet "bredde" - skulle det ikke have været "bredde", "bredde1" osv.?
Avatar billede erikjacobsen Ekspert
29. november 2007 - 10:36 #10
Selv om du i javascript gemmer inputfelterne, så sendes de allesammen af sted ved submit. Hvad med at give dem forskellige navne, som du selv er inde på 10:22:05?
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:39 #11
grunden til det ligger i span elementer er at de skifter alt efter om man vælger "bord" eller "stumtjener" og på sidstnævnte har du af gode grunde ikke en bredde at indtaste..

alle bredder skal poste til samme felt i databasen. MEN, det er kun en af dem der er aktiv af gangen.

derfor jeg kom til at tænke på noget lignene :
$bredde = $_POST['bredde'];
$bredde2 = $_POST['bredde2'];
$bredde3 = $_POST['bredde3'];
$bredde4 = $_POST['bredde4'];
$bredde5 = $_POST['bredde5'];
$bredde6 = $_POST['bredde6'];
if(isset($bredde)){$bredde_ins = $bredde;}
if(isset($bredde2)){$bredde_ins = $bredde2;}
if(isset($bredde3)){$bredde_ins = $bredde3;}
if(isset($bredde4)){$bredde_ins = $bredde4;}
if(isset($bredde5)){$bredde_ins = $bredde5;}
if(isset($bredde6)){$bredde_ins = $bredde6;}

også navngive text-felterne efter det selvfølgelig.

men det var måske bare en hjerneprut ? ;o)
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:40 #12
det skal siges at jeg ikke kan få ovenstående til at virke... så jeg har nok lavet et par fejl..
Avatar billede nielle Nybegynder
29. november 2007 - 10:41 #13
Det vil sikkert virke, men selce input felterne skal også have de nye navne.
Avatar billede erikjacobsen Ekspert
29. november 2007 - 10:42 #14
Du kan ikke bruge isset(...) til at teste - den vil altid være sand for form-elementer i $_POST, der er i formen. Check om den er tom/ikke-tom  if ($_POST[...]=="") ...
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:46 #15
prøver det lige erik
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:49 #16
Erik kan du ikke lave et helt eksembel, da jeg ikke lige kan se hvordan den kommer til at tjekke om den er sat.

for mig ligner det den tjekker om den er tom. :o)

if($_POST[dybde_min1] == ""){$dybde_min_ins = $dybde_min1;}

så er $dybde_min_ins = $dybde_min1 hvis $dybde_min1 er tom?
Avatar billede nielle Nybegynder
29. november 2007 - 10:51 #17
if ($_POST['dybde_min1'] != "") { $dybde_min_ins = $_POST['dybde_min1']; }
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:53 #18
great :)
Avatar billede svelmoe Nybegynder
29. november 2007 - 10:54 #19
nielle + erik, i må dele de 5 point.

Jeg siger tusind tak
Avatar billede nielle Nybegynder
29. november 2007 - 10:56 #20
Springer over på denne her :^)
Avatar billede erikjacobsen Ekspert
29. november 2007 - 11:02 #21
Jeg samler slet ikke på point, tak.
Avatar billede svelmoe Nybegynder
29. november 2007 - 11:31 #22
som i ønsker :)
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