abonnement Unibet Coolblue Bitvavo
pi_25731384
quote:
Op vrijdag 25 maart 2005 13:42 schreef nummer9 het volgende:
Dit werkt helaas niet. Het resultaat is dan 'Array' en dat is niet wat ik wil.
Een array kun je ook niet zomaar echo'en

Doe eens dit:
1print_r($count);
pi_25731423
Je moet OF de string spilllen en dan jouw rexexp op de elementen van de array loslaten met een loopje OF je gebruikt mijn regexp maar dat ZONDER split

Die explode van je doet overigens ook niet wat je wil. '\n' is een string van 2 tekens, een backslash en een n. "\n" is een string van 1 teken, een linefeed.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25731507
quote:
Op vrijdag 25 maart 2005 13:42 schreef nummer9 het volgende:
Wat moet ik doen om de twee zinnen dit met bomen te beginnen als resultaat onder elkaar krijg
De twee zinnen die je zoekt staan in de array $matches. Die kan je dan zelf weer aan elkaar plakken met bijvoorbeeld implode() of join().
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25731535
Wat ik nu krijg is vaag, ik krijg nu een foutmelding op

1$count = preg_match('/^Bomen.*/mi', $string, $matches);


Wanneer ik onderstaande code uitvoer krijg ik deze foutmelding:

Warning: preg_match() expects parameter 2 to be string, array given in c:\wamp\www\test\test.php on line 55

1
2
3
4
5
6
7
8
9
10
11
12
<?php
$string
= "
Het is lekker weer
Bomen krijgen weer bladeren
Temperatuur is aangenaam
Bomen staan weer in bloei"
;

$string = explode ('\n', $string);

$count = preg_match('/^Bomen.*/mi', $string, $matches);
print_r($count);
?>


Iemand nog tips waar ik het in moet zoeken?
pi_25731710
quote:
Op vrijdag 25 maart 2005 13:51 schreef SuperRembo het volgende:

[..]

De twee zinnen die je zoekt staan in de array $matches. Die kan je dan zelf weer aan elkaar plakken met bijvoorbeeld implode() of join().
Bedankt allemaal, ik kom al iets verder. Wanneer ik deze code uitvoer krijg ik echter alleen de zin 'Bomen krijgen weer bladeren'. Wat kan ik doen om te kijken wat er in de array $matches zit?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$string
= "
Het is lekker weer
Bomen krijgen weer bladeren
Temperatuur is aangenaam
Bomen staan weer in bloei
"
;

$count = preg_match('/^Bomen.*/mi', $string, $matches);

$resultaat = implode(",", $matches);

print
$resultaat;
?>


Nogmaals bedankt!
pi_25731886
quote:
Op vrijdag 25 maart 2005 14:00 schreef nummer9 het volgende:

Wanneer ik deze code uitvoer krijg ik echter alleen de zin 'Bomen krijgen weer bladeren'.
O ja, het moet natuurlijk preg_match_all zijn.
quote:
Wat kan ik doen om te kijken wat er in de array $matches zit?
Dat kan met var_dump of print_r.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25732290
quote:
Op vrijdag 25 maart 2005 14:07 schreef SuperRembo het volgende:

[..]

O ja, het moet natuurlijk preg_match_all zijn.
[..]

Dat kan met var_dump of print_r.
Beide zijn op te zoeken als ik niet zo snel resultaat wilde hebben. Ik heb nu inderdaad de resultaten. Bedankt allemaal en ik zal toch echt beter moeten zoeken!
pi_25733882
Je zou het zo kunnen doen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$string
= "Het is lekker weer
Bomen krijgen weer bladeren
Temperatuur is aangenaam
Bomen staan weer in bloei"
;

$string = explode ("\n", $string);

$match = "bomen";
$matches = array();

$x = 0;
foreach(
$string as $val) {
    if(
stristr( substr ( $val, 0, strlen($match) ), $match) ) $matches[] = $x;
    
$x++;
}

echo
"Zinnen die beginnen met ". $match .": ". implode(", ", $matches);
?>


Dit werkt niet omdat er nu letterlijk op de string '\n' gezocht wordt:
1
2
3
<?php
$string
= explode ('\n', $string);
?>

Door het tussen dubbele aanhalingstekens te zetten wordt het omgezet in een 'newline'-character.

-edit-
ik had dit topic niet de halve dag open moeten laten staan lama
pi_25746515
ik wil iets dat hij kijkt in de database, en dat de inhoud met het hoogste getal (in dit geval 'gebruikers_id') als resultaat dr uit komt rollen
pi_25746990
1select max(gebruikers_id) from table
pi_25747045
Dat kan met ORDER BY in combinatie met LIMIT 1.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  zaterdag 26 maart 2005 @ 17:29:52 #112
43624 Martijn_77
It was a good year
pi_25760758
zijn er ook site waar je standaard stukken PHP kunt vinden?
Experience is what you get when you don't get what you wanted
Take my advice ... I don't use it anyway...
Een goede Fok! Search
Een goede Fok! Search
pi_25760850
Je kunt googelen naar 'php code snippets' (volgens mij heten stukjes 'snippets'... kutwoord)
Maar waarom zou je? Het is het leukst om het zelf te leren en schrijven
pi_25767632
loop tegen een klein probleempje aan:
heb deze code:
1
2
3
4
5
6
7
8
9
<?php
function Whois($string)
{
$string = explode("|",$string);
$whois = "SELECT * FROM `users` WHERE ID='".$string[0]."'";
$result = mysql_query($whois) or die(mysql_error());
return
$result;
}
?>


als $string wordt het volgende aan geleverd:
quote:
1|21-03-05|15:00
wat moet er gebeuren:
ik vraag de functie op om aan de hand van een ID een username te achterhalen en de username terug te geven..
ik krijg met $result een Resource id #5 terug...
oke ka ik mee leven:
dus ik zorg dat hij alleen kolom 2 pakt d.m.v. $result[2]
en toen was ie leeg
ditzelfde geldt voor [1] of [0] er komt niks terug
als ik get_resource_type() doe dan zegt ie wel netjs dat het een mysql result is???

ik snap em niet meer, wat zie ik over het hoofd...??
ow en ja ik ben 100% zeker van het feit dat ik de goede gegevens meegeef aan de whois functie

als ik de query uyitvoer inb phpmyadmin geeft hij ook geen fout, heb ook al de quotes bij de where clause weggehaald... niks

wie kan mij helpen???
pi_25768229
Je vergeet

1$row = mysql_fetch_assoc($result);


Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25768388
quote:
Op zaterdag 26 maart 2005 22:15 schreef SuperRembo het volgende:
Je vergeet
[ code verwijderd ]

die werkte niet maar
1
2
mysql_fetch_array($result)
return $result[1];

wel

dat ik daar niet op gekomen ben
pi_25772470
quote:
Op vrijdag 25 maart 2005 11:04 schreef SuperRembo het volgende:
Sorteren doe je normaal gesproken in de database. In dit geval:
[ code verwijderd ]

Dan hou je in de loop bij met welke tabel je bezig bent: $huidigAantal. Die zet je voor de loop op 0.
Als $rij['registeraantal'] ongelijk is aan $huidigAantal, dan weet je dat je een nieuwe tabel moet beginnen. Een nieuwe tabel beginnen houd in:
- indien nodig de vorige tabel afsluiten
- $huidigAantal bijwerken
- het huidige aantal printen
- nieuwe tabel met header printen
Dat is nu mooi gelukt http://achterop23.coolinc(...)nc.info/register.php

alleen hoe krijg ik een enter in een print of echo?

de code
quote:
$query = "SELECT * FROM register ORDER BY registeraantal" or die(mysql_error());

$resultaat = mysql_query($query) or die(mysql_error());
print "1 keer gefietst";
echo "<table border=\"0\">
<tr>
<td>nummer</td>
<td>naam</td>
</tr>";
$huidigaantal=0;
$aantalcheck=1;

while ($rij = mysql_fetch_assoc($resultaat)){
if ($aantalcheck < $rij['registeraantal']) {
echo"</tr></table>";
print $rij['registeraantal']; print " keer gefietst";
echo "<table border=\"0\">
<tr>
<td>nummer</td>
<td>naam</td>
</tr>";
$huidigaantal=0;
}
$huidigaantal=$huidigaantal+1;
echo"<tr><td>"; print $huidigaantal; echo "</td>";
echo"<td>"; print $rij['registernaam']; echo "</td>";
$aantalcheck = $rij['registeraantal'];
}

echo"</tr></table>";
?>


[ Bericht 20% gewijzigd door achterop23 op 27-03-2005 01:14:33 ]
pi_25772874
1print nl2br($rij['registernaam']);


Je hoeft overigens niet steeds een commando te herhalen als die hetzelfde is (print en echo zijn identiek, tenminste, op de manier waarop jij het gebruikt. hier het verschil).

Dat kan dus ook zo:

1
2
3
<?php
echo "<tr><td>".$huidigaantal."</td><td>".$rij['registernaam']."</td>";
?>
pi_25772927
Code wat opgeschoond:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$query = "SELECT * FROM register ORDER BY registeraantal";

$resultaat = mysql_query($query) or die(mysql_error());

while (($rij = mysql_fetch_assoc($resultaat))!==false){
   if ($rij['registeraantal'] != $huidigaantal) {
      if ($huidigaantal>0) {
         // sluit tabel
         echo "</tr></table>\n";
      }
      // begin nieuwe tabel
      $huidigaantal = $rij['registeraantal'];
      $nummer = 0;
      print $huidigaantal." keer gefietst\n";
      echo '<table>';
      echo '<tr><th>nummer</th><th>naam</th></tr>';
   }
   $nummer++;
   echo '<tr>';
   echo '<td>'.$nummer.'</td>';
   echo '<td>'.$rij['registernaam'].'</td>';
   echo "<tr>\n";
}


([ code] tags maakt code leesbaarder dan [ quote])

Een niewe regel in een string maak je zo: "\n", maar niet zo '\n'
De details lees je hier.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25772976
quote:
Op zondag 27 maart 2005 01:33 schreef Heliospan het volgende:

1print nl2br($rij['registernaam']);
Wat heeft dat voor nut
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25773022
quote:
hoe krijg ik een enter in een print of echo?


Had ik z'n post beter moeten lezen?
pi_25773070
nl2br uitvoeren op een string zonder nl's is een beetje overbodig.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25786201
quote:
Op zondag 27 maart 2005 01:38 schreef SuperRembo het volgende:
Code wat opgeschoond:
[ code verwijderd ]

([ code] tags maakt code leesbaarder dan [ quote])

Een niewe regel in een string maak je zo: "\n", maar niet zo '\n'
De details lees je hier.


Hoe krijg ik gegevens uit de database in een formulier, zodat deze eventueel gewijzigd kan worden met een update?
pi_25787213
lamaar, heb zelf al wat gevonden (in 2 dagen php+mysql leren is niet niks )
pi_25789188
waarom komt in een invoerveld niet de gehele waarde?
In de database staat in een veld: Jan Jansen
In het invoerveld komt alleen maar te staan: Jan
de spatie stopt ie dus.

1
2
3
4
5
6
7
$query = "SELECT * FROM register" or die(mysql_error()); 

$resultaat = mysql_query($query) or die(mysql_error()); 
while ($rij = mysql_fetch_assoc($resultaat)){
   print $rij['registernaam'];
   $getal=addslashes($rij['registernaam']);
echo "<form><input value=$getal /></form>";
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')