abonnement Unibet Coolblue Bitvavo
pi_54062095
quote:
Op zaterdag 20 oktober 2007 12:01 schreef Ozzlewozzle het volgende:
Een vriend van me wil gaan beginnen met PHP, wat voor websites/tutorials raad ik hem aan?
hoor van mensen dat "php5 zonder stress" een goed boekje moet wezen om in te stappen
pi_54069134
Niemand ervaring met imagemagick?
  maandag 22 oktober 2007 @ 21:37:14 #78
107951 JortK
Immer kwaliteitsposts
pi_54096916
Ik heb ook weer een vraagje :)

Ik heb een tabel waarin records zitten van gebruikers:

1
2
3
4
vdvorst
Crientj
[MoeMoe] Jordeh
[Fred] Fred


Ga zo maar door... :)

Nu wil ik die tabel door en een array opbouwen met alle waarden welke in de tabel voorkomen die tussen de [ en ] staan, maar hoe :{

Kan iemand me daarmee helpen ?
pi_54098330
quote:
Op maandag 22 oktober 2007 21:37 schreef JortK het volgende:
Kan iemand me daarmee helpen ?
Dat is toch vrij recht toe recht aan op te lossen? Je loopt door de records heen. Per record bepaal je de positie van "[" en van "]". Het stuk daartussen is wat je zoekt, dus dat zet je in je array. Wat is 't probleem?
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_54107965
klein vraagje:
ik ben bezig met een mini mail applicatie voor mijzelf
en ik vraag mij af of ik iets eraan kan doen dat Imap_open() 3x verbind met mijn mailserver voor een fout te geven...
in php5 kan je wel de hoeveelheid retries instellen, maar aangezien ik 4 gebruik heb ik 2 mogelijke oplossingen:
1) upgrade naar php5 (en hopen dat de rest van mij scripts het blijft doen)
2) een workaround voor imap_open zodat hij maar 1x verbind..

alleen die workaround kan ik niet vinden, dan blijft alleen optie 1 over...
iemand nog andere ideeen?
  dinsdag 23 oktober 2007 @ 12:57:43 #81
84926 WyriHaximus
Release the hounds smithers!
pi_54108082
quote:
Op dinsdag 23 oktober 2007 12:50 schreef mschol het volgende:
klein vraagje:
ik ben bezig met een mini mail applicatie voor mijzelf
en ik vraag mij af of ik iets eraan kan doen dat Imap_open() 3x verbind met mijn mailserver voor een fout te geven...
in php5 kan je wel de hoeveelheid retries instellen, maar aangezien ik 4 gebruik heb ik 2 mogelijke oplossingen:
1) upgrade naar php5 (en hopen dat de rest van mij scripts het blijft doen)
2) een workaround voor imap_open zodat hij maar 1x verbind..

alleen die workaround kan ik niet vinden, dan blijft alleen optie 1 over...
iemand nog andere ideeen?
Optie 3 en eingelijk mij favoriete optie: Pak een packet sniffer en reverse engineer het IMAP protocol . (Je kunt natuurlijk ook de RFC's lezen .) En zelf een pure php imap class bouwen (of er ergens 1 zoeken http://phpclasses.org/ staat altijd wel iets).
phluphy for president!
pi_54108160
quote:
Op dinsdag 23 oktober 2007 12:57 schreef WyriHaximus het volgende:

[..]

Optie 3 en eingelijk mij favoriete optie: Pak een packet sniffer en reverse engineer het IMAP protocol . (Je kunt natuurlijk ook de RFC's lezen .) En zelf een pure php imap class bouwen (of er ergens 1 zoeken http://phpclasses.org/ staat altijd wel iets).
zo'n goeie scripter ben ik nou ook weer niet...
maar die classes ga ik eens bekijken...
pi_54137089
Ik ben op dit moment even bezig met een eigen projectje, en nu heb ik voor mijn script een zoekfunctie gemaakt. Alles werkt goed, dus tot zover geen problemen. Het zoekformulier ziet er als volgt uit:

Trefwoord: <input>
Categorie: <dropdown lijst>
Regio <dropdown lijst>

Maar het probleem met deze dropdown lijsten is dat je maar 1 categorie, en maar 1 regio kan kiezen. Nu wil ik dit graag veranderen door middel van checkboxes. Alleen krijg ik dit maar niet voor elkaar.

De dropdownlijst voor het kiezen van een categorie genereer ik op de volgende manier:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
<p><select  if(isset($Branche)){ echo "value=\"$Branche\" "; }  name="Branche">
    
        
$result mysql_query("SELECT * FROM branche"); 
                
        <
option value="alles">Alles</option>
                
         while(
$retval=mysql_fetch_array($result)) { 
                
            <
option value=" echo($retval['id']); "> echo($retval['naam']); </option>
                
     } 
</
select></p>
?>


Hoe krijg ik nu "het kiezen van een categorie" voor elkaar met checkboxes in plaats van een dropdown lijst?
you and I ain't done Zeke!
pi_54137159
1<select multiple="multiple" size="4">


Zoiets?
pi_54137409
quote:
Op woensdag 24 oktober 2007 16:16 schreef Geqxon het volgende:

[ code verwijderd ]

Zoiets?
ik weet hoe je een checklist maakt met html, maar hoe krijg ik de query goed dat alle items die normaal in de list worden weergegeven nu een checkboxje worden
you and I ain't done Zeke!
pi_54137652
Genereer een lijstje met checkboxes met als naam bijvoorbeeld Categorie21 en dan is de ID van de categorie in dit geval dus 21. Je geeft hem ook die value mee. Dan loop je door alle checkboxen heen bij de zoek opdracht en geef je in de where clausule een dergelijke constructie mee:

WHERE
categorie = 13
OR
categorie = 15
OR
categorie = 21

Als bv die 3 gecheckt zijn.
"Reality is an illusion created by a lack of alcohol."
pi_54142666
krijg een foutmelding :')

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order = '0' WHERE id = '2'' at line 1

1
2
3
4
<?php
$query 
"UPDATE menu SET order = '$i' WHERE id = $menu"
mysql_query($query) or die(mysql_error()); 
?>


snap er niks van die regel code heeft altijd gewerkt ?
De enige echte BaggerUser!
Riemen
fiets kopen
pi_54143082
quote:
Op woensdag 24 oktober 2007 16:36 schreef Dzy het volgende:
Genereer een lijstje met checkboxes met als naam bijvoorbeeld Categorie21 en dan is de ID van de categorie in dit geval dus 21. Je geeft hem ook die value mee. Dan loop je door alle checkboxen heen bij de zoek opdracht en geef je in de where clausule een dergelijke constructie mee:

WHERE
categorie = 13
OR
categorie = 15
OR
categorie = 21

Als bv die 3 gecheckt zijn.
Ik zou kiezen voor een id als categorie[13], categorie[15] en categorie[21]. Van een aangevinkte checkbox wordt de naam doorgegeven naar het php-script, en op deze manier komt dat netjes in een array terecht. Daar kun je met een simpel loopje wel doorheen
pi_54144619
Oja dat is nog mooier, was ik even vergeten
"Reality is an illusion created by a lack of alcohol."
  donderdag 25 oktober 2007 @ 13:19:03 #90
56176 Catch22-
Ben je Blind?!
pi_54158034
quote:
Op woensdag 24 oktober 2007 20:26 schreef BaggerUser het volgende:
krijg een foutmelding

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order = '0' WHERE id = '2'' at line 1
[ code verwijderd ]

snap er niks van die regel code heeft altijd gewerkt ?
zowel order als id is een veld ? als je id niet als een integer/float hebt gedefinieerd moet je er apostroffen omheen zetten
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
  donderdag 25 oktober 2007 @ 13:37:56 #91
84926 WyriHaximus
Release the hounds smithers!
pi_54158435
quote:
Op woensdag 24 oktober 2007 16:36 schreef Dzy het volgende:
Genereer een lijstje met checkboxes met als naam bijvoorbeeld Categorie21 en dan is de ID van de categorie in dit geval dus 21. Je geeft hem ook die value mee. Dan loop je door alle checkboxen heen bij de zoek opdracht en geef je in de where clausule een dergelijke constructie mee:

WHERE
categorie = 13
OR
categorie = 15
OR
categorie = 21

Als bv die 3 gecheckt zijn.
Dit is imo nog steeds netter:
1WHERE categorie IN (13, 15,21)
:)
phluphy for president!
pi_54160636
quote:
Op woensdag 24 oktober 2007 20:26 schreef BaggerUser het volgende:
krijg een foutmelding

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order = '0' WHERE id = '2'' at line 1
[ code verwijderd ]

snap er niks van die regel code heeft altijd gewerkt ?
iemand enig idee? kan nemlijk niet erg verder als het niet wil en heb zo'n beetje alle komma's al op alle plekken gehad..
De enige echte BaggerUser!
Riemen
fiets kopen
pi_54160779
Heb je al een simpele echo $query geprobeerd?

Probeer deze eens:

$query = sprintf("UPDATE menu SET order = '%d' WHERE id = '%s'", intval($id), mysql_real_escape_string($menu));

Gebruik je overigens een variabele voor de tabelnaam? (bijv, $query = "UPDATE $tabel SET ..") Het zou weleens kunnen zijn dat de tabelnaam simpelweg leeg is.

-r-
pi_54161330
quote:
Op donderdag 25 oktober 2007 15:31 schreef Roönaän het volgende:
Heb je al een simpele echo $query geprobeerd?

Probeer deze eens:

$query = sprintf("UPDATE menu SET order = '%d' WHERE id = '%s'", intval($id), mysql_real_escape_string($menu));

Gebruik je overigens een variabele voor de tabelnaam? (bijv, $query = "UPDATE $tabel SET ..") Het zou weleens kunnen zijn dat de tabelnaam simpelweg leeg is.

-r-
nee die werkt ook niet.. (ookal krijg ik geen foutmelding) snap per niks van...

dit is eigenlijk de volledige code van de pagina.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$root 
$_SERVER["DOCUMENT_ROOT"]."/cms";
require_once(
$root.'/check.php');

$i 1;
foreach (
$_GET['menu'] as $menu)
{
    
//$query = "UPDATE menu SET order = '$i' WHERE id = "; 
    //mysql_query($query) or die(mysql_error()); 
    
    
$query sprintf("UPDATE menu SET order = '$menu' WHERE id = '$i'"); 
    
//echo $i."". $menu ."<br />";
    
$i++;
}
?>


waarin de array $menu bestaat uit 2 cyfers (een 1 en een 2) volgorde maakt niet uit..

en dit is de tabel:

id page order
1 page1 0
2 page2 0

[ Bericht 66% gewijzigd door BaggerUser op 25-10-2007 16:03:54 ]
De enige echte BaggerUser!
Riemen
fiets kopen
pi_54163771
Huh, ik snap je constructie niet helemaal. Je bent nu door de $_GET['menu'] aan het loopen, dus dat zou een array zijn? Hoe doe je dat? En je $menu wordt telkens het volgende element uit menu. Leg eens uit wat je daarmee wilt doen?
"Reality is an illusion created by a lack of alcohol."
pi_54164655
Moet het niet SET order = $i WHERE id = $menu zijn? Maar dan beveiligd tegen sql injection?
pi_54167804
oke ik probeer het even uit te leggen (misschien doe ik namelijk wel iets heel raars?)

ik heb een list en die items kan ik sorteren (doormiddel van drag en drop)
zodra er hier iets veranderd vraagt hij een pagina aan dmv ajax en stuurt hij dit mee:

?menu[]=2&menu[]=1

de cyfers komen in volgorde van id..
vervolgens lees ik die array dus uit en geef ik menu ($menu (oftewel de id)) de order ($i) op volgorde..

het moet dus dit zijn:
UPDATE menu SET order = '$i' WHERE id = '$menu'

echter hij wil de database niet updaten..

CREATE TABLE `menu` (
`id` int(11) NOT NULL auto_increment,
`page` varchar(30) NOT NULL,
`order` int(11) NOT NULL,
UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
De enige echte BaggerUser!
Riemen
fiets kopen
pi_54167820
quote:
Op donderdag 25 oktober 2007 18:36 schreef Roönaän het volgende:
Moet het niet SET order = $i WHERE id = $menu zijn? Maar dan beveiligd tegen sql injection?
ja je had gelijk maar hij wil heel die tabel niet updaten (teminste de sql statement in php is niet goed volgens mij)
De enige echte BaggerUser!
Riemen
fiets kopen
pi_54167996
quote:
Op donderdag 25 oktober 2007 20:56 schreef BaggerUser het volgende:
oke ik probeer het even uit te leggen (misschien doe ik namelijk wel iets heel raars?)

ik heb een list en die items kan ik sorteren (doormiddel van drag en drop)
zodra er hier iets veranderd vraagt hij een pagina aan dmv ajax en stuurt hij dit mee:

?menu[]=2&menu[]=1

de cyfers komen in volgorde van id..
vervolgens lees ik die array dus uit en geef ik menu ($menu (oftewel de id)) de order ($i) op volgorde..
Da's de eerste plek waar het fout kan gaan natuurlijk. Maar ik wil dat toch even naar het tweede plan verschuiven.
quote:
het moet dus dit zijn:
UPDATE menu SET order = '$i' WHERE id = '$menu'
Hoe ziet die query er exact uit in je php-script? Kun je de regels waar die query wordt opgebouwd eens op het forum zetten, tussen [php] en [ /php] tags?
pi_54168116
quote:
Op donderdag 25 oktober 2007 21:04 schreef Light het volgende:

[..]

Da's de eerste plek waar het fout kan gaan natuurlijk. Maar ik wil dat toch even naar het tweede plan verschuiven.
[..]

Hoe ziet die query er exact uit in je php-script? Kun je de regels waar die query wordt opgebouwd eens op het forum zetten
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
 

dit is mijn complete afhandeling
:
[
php]
$root $_SERVER["DOCUMENT_ROOT"]."/cms";
require_once(
$root.'/check.php');

$i 1;
foreach (
$_GET['menu'] as $menu)
{
    
//$query = "UPDATE menu SET order = '$i' WHERE id = $menu"; 
    //mysql_query($query) or die(mysql_error()); 
    
    
$query sprintf("UPDATE menu SET order = '$i' WHERE id = '$menu'"); 
    echo 
$i.""$menu ."<br />";
    
$i++;
}
?>


let op de echo..
als ik id 2 bovenaan heb
en id 1 als 2e heb

heeft het deze uitvoer:

12
21

dus

$i = 1 $menu = 2
$i = 2 $menu = 1

dit echo'd hij ook dus het meesturen naar de pagina gaat goed.


zie: http://rolfbroer.nl/cms/modules/Beheer/menu/index.php

[ Bericht 5% gewijzigd door BaggerUser op 25-10-2007 21:47:01 ]
De enige echte BaggerUser!
Riemen
fiets kopen
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')