Toon posts:

[php] 1 variable opsplitsen in 3 variablen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Mede tweakers,

Zoals jullie al in de vorrige posting van mij hebben gezien ben ik op dit moment actief bezig met het splitsen van variabelen en ik moet toegeven dit is niet mijn sterkste punt! :'(
PHP:
1
<?//Adres opsplitsen in adres, huisnummer en toevoeging.$temp = "";if (strstr ($adres, ' ') == false) {} else {     $temp = explode(" ", $adres);    $j = count($temp);    $huisnummer = "";    $adres = "";    $toevoeging = "";    for ($i = 0; $i < count($temp); $i++) {        $spatie = false;        if ($temp[$i] == " ") {            $spatie = true;            $j = true;        }        if ($spatie == false) {            $adres == $temp[$i];        } else {            if ($j == true) {                $toevoeging = $temp[$i];            } else {                $huisnummer == $temp[$i];            }        }    }    echo "$adres - $huisnummer - $toevoeging<br>";}?>

Ik heb het script op alle punten zover mogelijk getest en het ziet er naar uit de condities goed zijn geschreven maar het script schrijft geen waarden in de variabelen.

Als ik het script dan uitvoer krijg ik gewoon een blanco scherm.

Als jullie mij kunnen helpen dan zijn jullie m'n helden
Alvast bedankt.

  • Nielsz
  • Registratie: Maart 2001
  • Niet online
Zeg eerst eens wat het moet doen; dus geef een casus aan.

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Echo eens wat variabelen midden in het script ($temp bijv)

[edit]Just precausious: $adres komt toch niet via een POST/GET/SESSION het script binnen, terwijl je PHP > 4.2 hebt he? Echo die ook eens?

Verwijderd

Topicstarter
het is de bedoeling dat het script de variable $adres wat een waarde kan bevatten blastraat 2 2hoog of (nog geen rekening mee gehouden in het script blastraat 2-2hoog)
de waarde $adres is stuk eerder in het script gedefinieerd en gecontroleerd dat deze een waarde heeft.

ik heb op diverse punten echo's weergegeven zonder resultaat. Ik heb echter nog geen $temp laten weergeven dus dat ga ik bij deze even proberen.

edit:

Ik heb de variable temp op diverse plaatsen laten echo'en direct na de explode krijg ik op me scherm "array" te zien en verder in het programma is i leeg

ik niet meer snap :?


  • Nielsz
  • Registratie: Maart 2001
  • Niet online
Reguliere Expressies.

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 21:50
Op vrijdag 31 mei 2002 11:23 schreef __Lanz__ het volgende:
Als ik het script dan uitvoer krijg ik gewoon een blanco scherm.
Gevolgtrekking: (strstr ($adres, ' ') == false. Adres bevat dus geen spatie (en zal wel leeg zijn).

Aan jou om verder te debuggen.

Verwijderd

check eens eregi()
dan kun je mooi de 1ste string dan het nummer en dan je "extensie er uit halen met 1 commando en in een array pleuren


http://www.php.net/manual/en/function.ereg.php

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Nielsz:
Reguliere Expressies.
code:
1
2
3
x = GoT.getMaxAttr ( "behulpzaam", USERS_ALL );
x *= 2;
GoT.getUser ( "Nielsz" ).setAttr ( "behulpzaam", x, INCR );

:z ;)
</offtopic>

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Nielsz
  • Registratie: Maart 2001
  • Niet online
Op vrijdag 31 mei 2002 11:40 schreef drm het volgende:

[..]
code:
1
2
3
x = GoT.getMaxAttr ( "behulpzaam", USERS_ALL );
x *= 2;
GoT.getUser ( "Nielsz" ).setAttr ( "behulpzaam", x, INCR );

:z ;)
</offtopic>
$users = new users();
$x=users->find("drm");
$attr = new attributen();
$a=$attr->find("Halvezool");
$y = new waardering();
$y->add($x,$a,date("U"));

lang leve de vage varnames :7

Verwijderd

Topicstarter
Ik heb even een poging tot debuggen gedaan.

[guote]

op vrijdag 31 mei 2002 11:36

--------------------------------------------------------------------------------

quote:
--------------------------------------------------------------------------------
Op vrijdag 31 mei 2002 11:23 schreef __Lanz__ het volgende:
Als ik het script dan uitvoer krijg ik gewoon een blanco scherm.
--------------------------------------------------------------------------------

Gevolgtrekking: (strstr ($adres, ' ') == false. Adres bevat dus geen spatie (en zal wel leeg zijn).

[/quote]

Dit is dus niet waar, omdat ik heb ontdekt dat i wel degelijk naar deze conditie kijkt en dus hetgeen wat er tussen zit wel uitvoerd (getest doormiddel van echo's)

ik heb tevens eregi() gecheckt maar dit is volgens mij voor de eerste variable in een string. (dit zou je met een counter kunnen omzijlen denk ik)

Correct me if i'm wrong >:)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

__Lanz__ >

Het idee van een regular expression (zoals met ereg* (POSIX), of preg_* (pcre)) is dat je een patroon beschrijft die een verzameling van verschillende formaten strings beschrijft.
Als je begrijpt wat ik bedoel :+

De oplossing _is_ regexen gebruiken, dus ga daar maar mee bezig (komt zo vaak voor, dat je er genoeg van leert om het handig te vinden ;))
Nielsz:
[snip]
puh O-)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

bla
correcting....

hij zet zoveel variabelen in een array als jij aangeeft dat ie moet teruggeven
pseudocode vb:
pleur schoolstraat 4a in de eregi en noem de uitvoer $uit

(string)(integer)(string||Null)

dan krijg je een array $uit

$uit[1]="schoolstraat"
$uit[2]="4"
$uit[3]="a"

  • Nielsz
  • Registratie: Maart 2001
  • Niet online
Op vrijdag 31 mei 2002 12:11 schreef Zoepnek het volgende:

[..]

correcting....

hij zet zoveel variabelen in een array als jij aangeeft dat ie moet teruggeven
pseudocode vb:
pleur schoolstraat 4a in de eregi en noem de uitvoer $uit

(string)(integer)(string||Null)

dan krijg je een array $uit

$uit[1]="schoolstraat"
$uit[2]="4"
$uit[3]="a"
correcting....
$uit[0]="schoolstraat"
$uit[1]="4"
$uit[2]="a"

:P
Pagina: 1