abonnement Unibet Coolblue Bitvavo
pi_33127083
Zoals ik al zei, ik heb het vermoeden dat $giftwrap gelijk wordt gesteld aan $_SESSION['giftwrap']. Zodra je een array gaat toekennen aan $_SESSION['giftwrap'] verbreek je die verbinding.

Doe voor de grap eens een unset($giftwrap) voor die foreach-loop en kijk dan eens of het werkt
  FOK!-Schrikkelbaas vrijdag 16 december 2005 @ 10:50:35 #27
1972 Swetsenegger
Egocentrische Narcist
pi_33127352
quote:
Op vrijdag 16 december 2005 10:40 schreef JeRa het volgende:
Zoals ik al zei, ik heb het vermoeden dat $giftwrap gelijk wordt gesteld aan $_SESSION['giftwrap']. Zodra je een array gaat toekennen aan $_SESSION['giftwrap'] verbreek je die verbinding.

Doe voor de grap eens een unset($giftwrap) voor die foreach-loop en kijk dan eens of het werkt
Waarom werkt dit dan wel opdezelfde server?
1
2
3
4
5
6
7
8
9
10
11
<?
    $_SESSION['cart']=array(1 => 2, 4 => 1, 7 => 3);
    $_SESSION['giftwrap']=array(GW_1 => 1, GW_7 => 3);
    foreach($_SESSION['cart'] as $k => $v){
        if(array_key_exists("GW_".$k,$_SESSION['giftwrap'])){
            $giftwrap=$_SESSION['giftwrap']['GW_'.$k];
            echo $giftwrap."\r\n";
            print_r($_SESSION['cart']);
            print_r($_SESSION['giftwrap']);
        }}
?>


Alleen wanneer de sessie van een andere page komt werkt het niet.
Ook met register_globals: off werkt het niet.

Ik heb geloof ik de oplossing nu door de var een andere naam te geven dan de sessie naam (dus $kadoverpakking=$_SESSION['giftwrap'][specifieke key];

Wazig, je zou denken dat register_globals off dat ook oplost
pi_33128172
Met get_defined_vars() kun je erachter komen welke variabelen er zijn ingesteld voordat je je script draait. Dus:

print_r(get_defined_vars());

Zie je daar iets speciaals aan m.b.t. giftwrap en $_SESSION[giftwrap]?
  FOK!-Schrikkelbaas vrijdag 16 december 2005 @ 11:25:22 #29
1972 Swetsenegger
Egocentrische Narcist
pi_33128326
quote:
Op vrijdag 16 december 2005 11:19 schreef JeRa het volgende:
Met get_defined_vars() kun je erachter komen welke variabelen er zijn ingesteld voordat je je script draait. Dus:

print_r(get_defined_vars());

Zie je daar iets speciaals aan m.b.t. giftwrap en $_SESSION[giftwrap]?
Ben wel benieuwd, zal straks eens kijken

-edit-
Voor de foreach krijg ik dit terug
[HTTP_SESSION_VARS] => Array ( [cart] => Array ( [1] => 2 [4] => 1 [7] => 3 ) [giftwrap] => Array ( [GW_1] => 1 [GW_7] => 3 ) ) [_SESSION] => Array ( [cart] => Array ( [1] => 2 [4] => 1 [7] => 3 ) [giftwrap] => Array ( [GW_1] => 1 [GW_7] => 3 ) ) [cart] => Array ( [1] => 2 [4] => 1 [7] => 3 ) [giftwrap] => Array ( [GW_1] => 1 [GW_7] => 3 ) ) 1 Array ( [1] => 2 [4] => 1 [7] => 3 ) Array ( [GW_1] => 1 [GW_7] => 3 ) 3 Array ( [1] => 2 [4] => 1 [7] => 3 ) Array ( [GW_1] => 1 [GW_7] => 3 )

[ Bericht 32% gewijzigd door Swetsenegger op 16-12-2005 11:37:05 ]
  FOK!-Schrikkelbaas vrijdag 16 december 2005 @ 14:15:34 #30
1972 Swetsenegger
Egocentrische Narcist
pi_33133480
JeRa, je hebt het regelmatig over multiple inserts. Ik neem aan dat je bedoeld dat je met 1 insert meerdere records kan invoegen?
Waar vind ik daar documentatie over, kan het in de mysql manual niet vinden (of mijn zoekterm klopt niet)
  FOK!-Schrikkelbaas vrijdag 16 december 2005 @ 23:10:26 #31
1972 Swetsenegger
Egocentrische Narcist
pi_33148487
1if(preg_match('/^[0-9A-Za-z_\-]+[@][0-9A-Za-z_\-]+([.][0-9A-Za-z]+)([.][A-Za-z]{2,4}){0,1}$/x',$_POST['email'])){


Deze gebruik ik op een formulier, om redelijk strak te controleren om zo mailinjection te voorkomen.
Maar hij staat wel erg strak, want jeroen.swets@gmail.com pakt hij niet

Zo pakt hij dat wel toch:

'/^[0-9A-Za-z_\-][.][0-9A-Za-z_\-] +[@][0-9A-Za-z_\-]+([.][0-9A-Za-z]+)([.][A-Za-z]{2,4}){0,1}$/x'

of pakt hij dan weer teveel
pi_33149397
quote:
Op vrijdag 16 december 2005 14:15 schreef Swetsenegger het volgende:
JeRa, je hebt het regelmatig over multiple inserts. Ik neem aan dat je bedoeld dat je met 1 insert meerdere records kan invoegen?
Waar vind ik daar documentatie over, kan het in de mysql manual niet vinden (of mijn zoekterm klopt niet)
Insert into table (field1, field2, field3, field4)
values (1, 2, 3, 4), (2, 3, 4, 5), (3, 4, 5, 6), (4, 5, 6, 7)

You get the idea
pi_33149490
quote:
Op vrijdag 16 december 2005 23:10 schreef Swetsenegger het volgende:

[ code verwijderd ]

Deze gebruik ik op een formulier, om redelijk strak te controleren om zo mailinjection te voorkomen.
Maar hij staat wel erg strak, want jeroen.swets@gmail.com pakt hij niet

Zo pakt hij dat wel toch:

'/^[0-9A-Za-z_\-][.][0-9A-Za-z_\-] +[@][0-9A-Za-z_\-]+([.][0-9A-Za-z]+)([.][A-Za-z]{2,4}){0,1}$/x'

of pakt hij dan weer teveel
Mail header injection is makkelijker te voorkomen. Volgens de mail-rfc's moeten de mailheaders gescheiden worden door \r\n, maar het is bekend dat sommige servers ook alleen \n als scheiding accepteren. Maar zolang er geen \n in het mailadres staat is mail header injection niet mogelijk (iig niet voor zover ik weet). Het ergste dat er dan nog kan gebeuren is dat de persoon in kwestie geen email krijgt. Da's weliswaar vervelend, maar niet echt ernstig qua veiligheidsrisico
pi_33151353
quote:
Op vrijdag 16 december 2005 11:25 schreef Swetsenegger het volgende:

[..]

Ben wel benieuwd, zal straks eens kijken

-edit-
Voor de foreach krijg ik dit terug
-snip-
Zo te zien wordt $giftwrap wel geïnitialiseerd op de session-key 'giftwrap'. Nou zou dit niets uit mogen maken, maar ik denk dat het veranderen van de naam van de variabele (wat je dus al gedaan hebt) de beste oplossing is wellicht is het een bug in een bepaalde versie van PHP die op de ene plek wel gedraaid wordt en op de andere niet.
quote:
JeRa, je hebt het regelmatig over multiple inserts.
Regelmatig? anyway, die methode die Light noemt is de juiste
pi_33157128
Ik wil vanuit een select-menu html-files (die gewoon met URL in de <option> staan) includen, zodat het menu behouden blijft. Kan iemand mij helpen?
Het is ongetwijfeld gemakkelijker in blinde onderwerping te leven dan aan je bevrijding te werken: ook de doden zijn beter aangepast aan de aarde dan de levenden
pi_33157195
quote:
Op zaterdag 17 december 2005 11:46 schreef RichardQuest het volgende:
Ik wil vanuit een select-menu html-files (die gewoon met URL in de <option> staan) includen, zodat het menu behouden blijft. Kan iemand mij helpen?
Includen is serverside. Als iemand een SELECT gebruikt moet er toch echt een request naar de server om zo'n include uit te voeren; maar ik betwijfel het of je daar iets aan hebt. Wat wil je precies doen?
  zaterdag 17 december 2005 @ 11:56:41 #37
37634 wobbel
Da WoBBeL King
pi_33157341
M'n vraag uit het vorige topic...

Hoe moet mijn statement worden? met OR, AND of ||?

Als $aap = 1 mag je door, als $blaat = 1 is mag je door, maar als ze allebei 1 zijn mag je ook door.
Als ze allebei 0 zijn, mag je niet door....welke statement moet ik dan hebben?
pi_33157366
quote:
Op zaterdag 17 december 2005 11:49 schreef JeRa het volgende:

[..]

Includen is serverside. Als iemand een SELECT gebruikt moet er toch echt een request naar de server om zo'n include uit te voeren; maar ik betwijfel het of je daar iets aan hebt. Wat wil je precies doen?
Ik bedoel dus <select> en niet de SQL SELECT...

1
2
3
4
5
6
echo ("<select name=HTMLkeuze>");
echo ("<option value="" selected>Selecteer een pagina</option>");
echo ("<option value=pagina1.html>pag 1</option>");
echo ("<option value=pagina2.html>pag 2</option>");
echo ("<option value=pagina3.html>pag 3</option>");
echo ("</select>");


Aan de hand van deze keuze moeten de HTML-pagina's onder het menu komen (met het menu zichtbaar).
Het is ongetwijfeld gemakkelijker in blinde onderwerping te leven dan aan je bevrijding te werken: ook de doden zijn beter aangepast aan de aarde dan de levenden
pi_33157423
quote:
Op zaterdag 17 december 2005 11:57 schreef RichardQuest het volgende:

[..]

Ik bedoel dus <select> en niet de SQL SELECT...
[ code verwijderd ]

Aan de hand van deze keuze moeten de HTML-pagina's onder het menu komen (met het menu zichtbaar).
Is het geen optie om een onchange te gebruiken voor je SELECT-box? Zodra de gebruiker iets kiest, laadt je het menu opnieuw waarbij je de huidige option op de gekozen waarde zet en onder het menu een bestand include.

Anders wordt het denk ik werken met (i )frames
pi_33157494
quote:
Op zaterdag 17 december 2005 12:00 schreef JeRa het volgende:

[..]

Is het geen optie om een onchange te gebruiken voor je SELECT-box? Zodra de gebruiker iets kiest, laadt je het menu opnieuw waarbij je de huidige option op de gekozen waarde zet en onder het menu een bestand include.

Anders wordt het denk ik werken met (i )frames
Frames is geen optie. Kun je me met de code helpen?
Het is ongetwijfeld gemakkelijker in blinde onderwerping te leven dan aan je bevrijding te werken: ook de doden zijn beter aangepast aan de aarde dan de levenden
pi_33157595
quote:
Op zaterdag 17 december 2005 12:03 schreef RichardQuest het volgende:

[..]

Frames is geen optie. Kun je me met de code helpen?
Moet je wel zeggen waar je vastloopt

Snap je hoe je een actie kunt uitvoeren aan de clientside zodra er een optie wordt gekozen door middel van Javascript? (of eventueel als je dit niet wilt, een formulier versturen zodra de gebruiker op een knop drukt)

Snap je hoe je vervolgens een PHP-bestand kunt aanroepen met daarachteraan de naam van het document dat je wilt openen? Bijv. file.php?item=blaat

En hoe je vervolgens die query kunt ophalen ('item' dus), controleren op waarde en vervolgens het goede bestand includen? (of liever, requiren)
pi_33157739
quote:
Op zaterdag 17 december 2005 12:07 schreef JeRa het volgende:

[..]

Moet je wel zeggen waar je vastloopt

Snap je hoe je een actie kunt uitvoeren aan de clientside zodra er een optie wordt gekozen door middel van Javascript? (of eventueel als je dit niet wilt, een formulier versturen zodra de gebruiker op een knop drukt)

Snap je hoe je vervolgens een PHP-bestand kunt aanroepen met daarachteraan de naam van het document dat je wilt openen? Bijv. file.php?item=blaat

En hoe je vervolgens die query kunt ophalen ('item' dus), controleren op waarde en vervolgens het goede bestand includen? (of liever, requiren)
Oké, na wat gepruts heb ik dit:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<SCRIPT LANGUAGE="JavaScript">
<!--
function Navigeer(lijst) {
  var Geselecteerd = lijst.selectedIndex
  // als de bovenste optie geselecteerd is niets doen
  if (Geselecteerd != 0) {
    window.location = lijst.options[Geselecteerd].value;
  }
}
// -->
</SCRIPT>  

<? 
echo ("<select name=HTMLkeuze onchange="Navigeer(this);">");
echo ("<option value="" selected>Selecteer een pagina</option>");
echo ("<option value=pag1.html> 1</option>");
echo ("<option value=pag2.html> 2</option>");
echo ("<option value=pag3.html> 3</option>");
echo ("</select>");
?>


Maar nu opent hij de pagina's zonder dat het menu weer terugkomt .
Het is ongetwijfeld gemakkelijker in blinde onderwerping te leven dan aan je bevrijding te werken: ook de doden zijn beter aangepast aan de aarde dan de levenden
pi_33157894
quote:
Op zaterdag 17 december 2005 12:15 schreef RichardQuest het volgende:

[..]

Oké, na wat gepruts heb ik dit:
[ code verwijderd ]

Maar nu opent hij de pagina's zonder dat het menu weer terugkomt .
Dat klopt, aangezien je de location naar de waarde van de OPTION omzet je raakt dus het hele menu kwijt. Dit komt meer in de richting:
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
<SCRIPT LANGUAGE="JavaScript">
<!--
function Navigeer(lijst) {
  var Geselecteerd = lijst.selectedIndex
  // als de bovenste optie geselecteerd is niets doen
  if (Geselecteerd != 0) {
    window.location = 'menu.php?item=' + lijst.options[Geselecteerd].value;
  }
}
// -->
</SCRIPT>  

<? 
echo ("<select name=HTMLkeuze onchange="Navigeer(this);">");
echo ("<option value="" selected>Selecteer een pagina</option>");
echo ("<option value=pag1> 1</option>");
echo ("<option value=pag2> 2</option>");
echo ("<option value=pag3> 3</option>");
echo ("</select>");

//Haal item op
$item = strtolower(trim($_GET['item']));

if ($item != '') {
    //Controleer item
    $toegestaan = array('pag1', 'pag2', 'pag3');
    $bestandsnaam = $item . '.html';
    if ((!in_array($item, $toegestaan)) || (!file_exists($bestandsnaam))) {
        exit('Ongeldige keuze.');
    }

    //Include bestand
    require($bestandsnaam);
}

?>
pi_33158046
voor JeRa .
Het is ongetwijfeld gemakkelijker in blinde onderwerping te leven dan aan je bevrijding te werken: ook de doden zijn beter aangepast aan de aarde dan de levenden
pi_33158495
Hallo,

Ik heb nog steeds problemen met het connecten naar een MySQL database.
Ik heb Apache 2 / PHP 5 / Mysql 5 draaien, MySQL Front connect goed naar de database die werkt dus ook goed. PHP scripts draaien goed op de Apache 2 server maar zodra ik vanaf PHP een connect wil maken naar de MySQL db gaat er iets mis. Ik roep het mysql_connect() aan met de benodige argumenten maar het hele script doet dan niks. error_reporting staat op e_all maar die geeft ook niks weer. Zodra ik mysql_connect in me script zet lijkt het wel of niks meer werkt.

Iemand nog tips want ik kom er niet echt meer uit ?
  FOK!-Schrikkelbaas zaterdag 17 december 2005 @ 13:03:21 #46
1972 Swetsenegger
Egocentrische Narcist
pi_33158667
quote:
Op vrijdag 16 december 2005 23:39 schreef Light het volgende:

[..]

Insert into table (field1, field2, field3, field4)
values (1, 2, 3, 4), (2, 3, 4, 5), (3, 4, 5, 6), (4, 5, 6, 7)

You get the idea
Ah ok, dus meerdere values in dezelfde tabel. Het is niet mogelijk om met 1 insert meerdere records verdeeld over meerdere tabellen te inserten?
  FOK!-Schrikkelbaas zaterdag 17 december 2005 @ 13:06:24 #47
1972 Swetsenegger
Egocentrische Narcist
pi_33158726
quote:
Op vrijdag 16 december 2005 23:43 schreef Light het volgende:

[..]

Mail header injection is makkelijker te voorkomen. Volgens de mail-rfc's moeten de mailheaders gescheiden worden door \r\n, maar het is bekend dat sommige servers ook alleen \n als scheiding accepteren. Maar zolang er geen \n in het mailadres staat is mail header injection niet mogelijk (iig niet voor zover ik weet). Het ergste dat er dan nog kan gebeuren is dat de persoon in kwestie geen email krijgt. Da's weliswaar vervelend, maar niet echt ernstig qua veiligheidsrisico
Ja klopt, dat heb ik gelezen.
Maar sowieso wil ik wel op een valid mail adres checken.

Ik heb deze reguliere expressie trouwens eens gevonden voor een javascript check, maar ik begrijp er geen moer van:

/^[^@]+@[^@.]+\.[^@]*\w\w$/

Client side werkttie prima overigens
pi_33159018
quote:
Op zaterdag 17 december 2005 12:55 schreef PunisherADF het volgende:
Hallo,

Ik heb nog steeds problemen met het connecten naar een MySQL database.
Ik heb Apache 2 / PHP 5 / Mysql 5 draaien, MySQL Front connect goed naar de database die werkt dus ook goed. PHP scripts draaien goed op de Apache 2 server maar zodra ik vanaf PHP een connect wil maken naar de MySQL db gaat er iets mis. Ik roep het mysql_connect() aan met de benodige argumenten maar het hele script doet dan niks. error_reporting staat op e_all maar die geeft ook niks weer. Zodra ik mysql_connect in me script zet lijkt het wel of niks meer werkt.

Iemand nog tips want ik kom er niet echt meer uit ?
Wellicht kun je wat met mysql_error(), door de output van deze functie na het connecten even te laten zien?
pi_33159087
quote:
Op zaterdag 17 december 2005 13:03 schreef Swetsenegger het volgende:

[..]

Ah ok, dus meerdere values in dezelfde tabel. Het is niet mogelijk om met 1 insert meerdere records verdeeld over meerdere tabellen te inserten?
Voor zover ik weet niet nee. Als je meerdere INSERTs doet die op elkaar leunen (zeg door een foreign key) dan kun je het beste dus eerst LOCK TABLES table1 WRITE, table2 WRITE gebruiken om te verzekeren dat er geen DELETE in de tussentijd kan plaatsvinden bijvoorbeeld
pi_33159168
quote:
Op zaterdag 17 december 2005 13:06 schreef Swetsenegger het volgende:

[..]

Ja klopt, dat heb ik gelezen.
Maar sowieso wil ik wel op een valid mail adres checken.

Ik heb deze reguliere expressie trouwens eens gevonden voor een javascript check, maar ik begrijp er geen moer van:

/^[^@]+@[^@.]+\.[^@]*\w\w$/

Client side werkttie prima overigens
Tja, de regex voor een e-mailadres heeft al vele hoofdbrekens opgeleverd. Je kunt er nooit zeker van zijn, maar met zoiets is het toch wel redelijk te checken? Heb 't ff snel bedacht, kan goed zijn dat er iets niet aan klopt, dus feel free to enhance/fix

1/^[a-z0-9_\-]+(\.[a-z0-9_\-]+)*@[a-z0-9\-]+(\.[a-z0-9\-]+)+$/Ui


Deze pikt als het goed is alle e-mailadressen, zowel die met een domeinnaam als IP-adres achter het @-teken. Maar zoals ik al eerder zei, je kunt er gewoon nooit zeker van zijn zelfs niet als je MX-records gaat checken.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')