in_array lijkt niet te werken

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Wouter H

wouter H

11/09/2012 21:40:36
Quote Anchor link
hallo,

Ik krijg het niet voor elkaar om, te checken of een id, of er een getal in een array voorkomt.

Labels komt voort uit een ander gegeven, en is een kleine rits van getallen, gescheiden door een komma. bijv. 1,2,3,4 etc.

Zie de functie hieronder,
Bij voorbaat dank voor uw hulp,

wouter

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
function label($currentpage,$labels)
{

    $qry = mysql_query("SELECT * FROM `label` ORDER BY `id` ASC");
    $rws = mysql_num_rows($qry);

    if ($rws > 0 )
    {

        $x = 1 ;
        $row = mysql_fetch_assoc($qry);
        $html = "<p>Selecteer een label.</p>";
        do{
            if (!is_array($labels)) $labels = array($labels);
            if (is_array($labels))
            {

                $string = $row['id'];
                if (in_array($string,$labels,true)) $checked = "CHECKED" ;  
            }

            
            $html .= "<div class=\"label\">";
            $html .= "<label><input type=\"checkbox\" value=\"".$row['id']."\" name=\"labelselect$x\" ".@$checked." />";
            
            $qry1 = mysql_query("SELECT * FROM `metadata` WHERE `label` = " . $row['id'] . " ORDER BY `lang` ASC ");
            $rws1 = mysql_num_rows($qry1);
            if ($rws1 > 0 )
            {

                $output = "";
                $row1 = mysql_fetch_assoc($qry1);
                do{
                    $output .= $row1['title'] . " / ";
                }
while ($row1 = mysql_fetch_assoc($qry1));
            }

                
            $html .= rtrim($output, " / ");

            $html .= "<input type=\"hidden\" name=\"labelid\" value=\"".$row['id']."\" />";
            $html .= "<input type=\"submit\" class=\"delete\" name=\"dellabel\" value=\" \" />";
            
            $html .= "</label></div>";
            
            $x++;
            
        }
while($row= mysql_fetch_assoc($qry));
        
        $html .= "<span style=\"dispay:block; position:relative; clear: both; float:left; \" >";
        $html .= langselect();
        $html .= "</span>";

        $html .= "<input type=\"hidden\" name=\"labels\" value=\"$x\" />";
    }

    else $html = langselect();
    
    return $html ;
}

?>
Gewijzigd op 11/09/2012 21:42:38 door Wouter H
 
PHP hulp

PHP hulp

21/11/2024 13:53:57
 
Wouter J

Wouter J

11/09/2012 21:49:15
Quote Anchor link
Kijk eens op http://php.net/in_array en mocht je dat niet snappen lees dan: http://www.phphulp.nl/php/tutorial/overig/phpnet/757/ (vooral hoofdstuk 2)
Sorry, verkeerd gelezen...
Gewijzigd op 11/09/2012 22:02:46 door Wouter J
 
- SanThe -

- SanThe -

11/09/2012 21:52:51
Quote Anchor link
Wouter H op 11/09/2012 21:40:36:
Labels komt voort uit een ander gegeven, en is een kleine rits van getallen, gescheiden door een komma. bijv. 1,2,3,4 etc.

if (!is_array($labels)) $labels = array($labels);


Dus nu heb je een array() met één waarde er in.
Namelijk: 1,2,3,4

Je bedoelt waarschijnlijk dit:
$labels = explode(',', $labels);
 
Wouter H

wouter H

11/09/2012 22:04:26
Quote Anchor link
dat heb ik ook geprobeerd, toen leek ik nog verder van huis met de foutmelding ... boolean given hupppeldepup seems to be an array
 
- SanThe -

- SanThe -

11/09/2012 22:07:14
Quote Anchor link
Wouter H op 11/09/2012 22:04:26:
... seems to be an array


Je wilt toch een array() hebben.
 
Wouter H

wouter H

11/09/2012 22:13:12
Quote Anchor link
ja, klopt, maar de in_array geeft dan deze melding... en zegt niet ja, ik heb in de array wel/niet wat gevonden
 
- SanThe -

- SanThe -

11/09/2012 22:22:33
Quote Anchor link
Wouter H op 11/09/2012 22:13:12:
ja, klopt, maar de in_array geeft dan deze melding...


Welke?
 
Wouter H

wouter H

12/09/2012 10:45:42
Quote Anchor link
Uiteindelijk heb ik de eerste regels vervangen door dit,
en kwam $labels niet over, na dit te hebben gecorriceert werkt het.

Bedankt voor de reactie.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
    $labels
= explode(",",$labels);
    if ($rws > 0 )
    {

        $x = 1 ;
        $row = mysql_fetch_assoc($qry);
        $html = "<p>Selecteer een label.</p>";
        do{
            $string = $row['id'];
            if (is_array($labels))
            {

                if (in_array($string,$labels))
                {

                    $checked = "CHECKED";        
                }

                else $checked = "";
            }


?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.