abonnement Unibet Coolblue Bitvavo
pi_35147690
Volgens mij werkt hij prima hoor, maar als er iets beters is hoor ik het graag
pi_35150002
quote:
Op donderdag 16 februari 2006 11:55 schreef mschol het volgende:
heb klein vraagje..
[...]
moet ik dit soms met een regexp_match doen?
Het kan met een regexp, maar ik zou het met een switch of met in_array doen.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
switch ($fruit) {
   case 'apple':
   case 'banana':
   case 'cherry':
      echo 'yummy!';
      break;
}

if (in_array($fruit, array('apple', 'banana', 'cherry')) {
   echo 'yummy!';
}

if (preg_match('/^(apple|banana|cherry)$/', $fruit) {
   echo 'yummy!';
}

if ($fruit == 'apple' or $fruit == 'cherry' or $fruit == 'cherry') {
   echo 'yummy!';
}
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_35151493
Ow, die had ik net nodig, de functie in_array

IS er ook een functie die dubbele items in een array verwijderd?

Als oplossing zat ik wel te denken aan
a) sorteren van array mbv sort()
b) via while lus bekijken of $array[$i] == $array[$i + 1]
c) indien waar, array[$i] verwijderen

Lijkt me best werkbaar, of is er iets snellers/beters?
pi_35155671
@the_disheaver

De PHP manual spreekt over een functie array_unique(). Wat zou die nu toch doen?
pi_35158383
Mensen ik heb een leuke! ik heb een lap text met allemaal inserts voor een mysql tabel, echter wil ik iedere insert stuk voor stuk gaan verwerken. Nu heb ik reeds geprobeerd om de inserts stuk voor stuk los te krijgen maar helaas is me dat tot op heden nog niet gelukt.

Heeft iemand misschien een regexje waarmee ik alle inserts incl data uit deze lap text kan halen?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_35159213
@Chandler

Is er geen simpelere mogelijkheid? Staan de INSERTs allemaal achter elkaar? Anders zou je bijvoorbeeld op newlines kunnen splitten
pi_35159296
Boe

Hallo!

Ik heb een klein vraagje. Ik ben bezig om een klein simpel forumpje te bouwen. Ik heb hier verschillende tabellen voor. 'forum_topics' en 'forum_replies' in ieder geval. In forum_topics zet ik onder andere de userid, titel, het bericht en de datum en username van de laatste post. Door middel van de volgende code zet ik op de hoofdpagina met alle fora (zoals forum.fok.nl) met deze function neer:

1
2
3
4
5
6
7
8
9
10
11
12
function getlastpost($topicid){
   $querylastpost = mysql_query("SELECT * FROM forum_topics WHERE id = '$topicid'");
   while($objectlastpost = mysql_fetch_object($querylastpost)){
      $querylastpostname = mysql_query("SELECT * FROM users WHERE userid = '$objectlastpost->lastpost_user'");
      while($objectlastpostname = mysql_fetch_object($querylastpostname)){
         $lastpost_user = $objectlastpostname->username;
      }
      $lastpost_name = $objectlastpostname->username;
      $lastpost_date = date("d/m/Y H:i",$objectlastpost->lastpost_date);
      return "<font size='1'>$lastpost_date <a href='/profiel/?id=$objectlastpost->lastpost_user'>$lastpost_user</a></font>";
   }
}


Die geeft dus netjes de laatste topics weer. Alleen wil ik ook dat hij controleert welke de laatste reply is op een topic. Ik zat eraan te denken om dus te controleren wanneer het laatste nieuwe topic was EN de laatste post, om vervolgens te controleren welke korter geleden was. Maar met dat laatste zit ik in de knoop, hoe kan ik dat het makkelijkst doen in een function?

Als iemand een andere makkelijkere oplossing weet mag dat ook. Overigens is deze code niet veilig en handig, maar dat komt later . Dat snap ik

Alvast bedankt
dit
is
mijn
signature.
pi_35159373
@RiderXXX

Eén mogelijkheid is dat je eerst alle data inleest, en ze vervolgens met een while()- of for()-loopje afloopt. Op die manier kun je makkelijk checken of er een volgende item is.

Je code is wel erg ranzig wat queries betreft. Als al je queries zo in elkaar zitten raad ik je _ten zeerste_ aan om te leren JOINen met SQL
pi_35159500
quote:
Op donderdag 16 februari 2006 17:56 schreef JeRa het volgende:
@RiderXXX

Eén mogelijkheid is dat je eerst alle data inleest, en ze vervolgens met een while()- of for()-loopje afloopt. Op die manier kun je makkelijk checken of er een volgende item is.

Je code is wel erg ranzig wat queries betreft. Als al je queries zo in elkaar zitten raad ik je _ten zeerste_ aan om te leren JOINen met SQL
Dank voor de bezorgdheid, maar dat snap ik Is ook puur om te testen Codes zitten ook vol met SQL Injections.. maar dat komt Ik werk het liefst in stappen

Dat ik ze kan aflopen met een while of for-loopje was me ook al duidelijk. Maar hoe zit het met het controleren welke de recentste is.. die uit de table 'forum_topics' of uit 'forum_replies'?
dit
is
mijn
signature.
pi_35159730
@RiderXXX

Het ging me meer om de JOINs een topic vullen met usernames door bij elke post een username op te vragen via een query is gewoon dodelijk voor de performance.

En wil je één query hebben waarmee je de laatste post hebt? Wat dacht je van alle posts van een topic opvragen, en omgekeerd sorteren op de primary key, gevolgd door een LIMIT 0, 1? Dan krijg je één post terug voor een topic, welke de recenste is.
pi_35161650
-edit-
slechts een dag te laat
pi_35162670
quote:
Op donderdag 16 februari 2006 17:52 schreef JeRa het volgende:
@Chandler

Is er geen simpelere mogelijkheid? Staan de INSERTs allemaal achter elkaar? Anders zou je bijvoorbeeld op newlines kunnen splitten
nee helaas kan dat ook niet want in de text zitten ook newlines verwerkt
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_35162826
quote:
Op donderdag 16 februari 2006 19:29 schreef Chandler het volgende:

[..]

nee helaas kan dat ook niet want in de text zitten ook newlines verwerkt
Geen andere truukjes mogelijk? Zoals het splitten op ')? (einde van een INSERT met een tekst)

En splitten op de letterlijke tekst 'INSERT INTO'? (die kun je later natuurlijk makkelijk weer toevoegen)
pi_35162967
klein vraagje:

ik maak nu neen tabel en bij elek kolom kan ik oplopen of aflopen sorteren.. maar
wat is het meest logisch:
bij: DESC neer zetten of bij

ik weet nooit wat nou het meest logische is..
  donderdag 16 februari 2006 @ 19:37:28 #190
32768 DionysuZ
Respect my authority!
pi_35163043
logisch zou zijn de groene bij descending (AFlopend) en de rode bij ascending (OPlopend)

maar zo werken icoontjes niet ik weet niet wat de mensen nou het meest logisch vinden.
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
pi_35163275
Normaal is een pijltje omhoog ASCending (driehoekje omhoog gaat van boven naar beneden ook van klein naar groot, dus oplopend) en andersom
pi_35163397
JeRa: Ja ik probeerde eerst dus te exploden op \r\n maar helaas dat werkt niet en een ander manier kan ik zo niet te voorschijn toveren. hoe bedoelde je dat met "INSERT INTO" etc?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_35163514
quote:
Op donderdag 16 februari 2006 19:44 schreef Chandler het volgende:
JeRa: Ja ik probeerde eerst dus te exploden op \r\n maar helaas dat werkt niet en een ander manier kan ik zo niet te voorschijn toveren. hoe bedoelde je dat met "INSERT INTO" etc?
Als je je bestand in een variabele hebt gestopt, zeg $data, dan kun je dit doen:

$data = explode('INSERT INTO', $data);

Dan worden alle INSERT INTO's weggehaald en krijg je een array met alle elementen die daar omheen zaten. Als je vervolgens vóór alle elementen weer een 'INSERT INTO' plakt, heb je je queries
pi_35163646
oef, doelde je daarop! hmmm dat moet natuurlijk wel lukken maar stel er staat insert into in de 'query' text? en dan?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_35164196
quote:
Op donderdag 16 februari 2006 19:50 schreef Chandler het volgende:
oef, doelde je daarop! hmmm dat moet natuurlijk wel lukken maar stel er staat insert into in de 'query' text? en dan?
Ik mag hopen dat je niet op een permanente oplossing aan het doelen bent, die vaker ingezet gaat worden als dit éénmalig is (wat ik dus hoop) check je gewoon even of het werkt natuurlijk
pi_35164668
En anders kun je iets in deze richting proberen natuurlijk:

/INSERT INTO .* \(.*\)/Uis

Voor een preg_match_all()? Maar dan nog even netjes uitwerken, dat je geen last hebt van haakjes in de teksten
pi_35165188
kopieren naar notepad

ctrl+H vervang INSERT met blablablablablablbla INSERT

nu kan je je elke insert filteren door de blablblablablablabal te zoeken


edit
maar eigenlijk was t al behoorlijk opgelost zie ik
As a rule, I never touch anything more sophisticated and delicate than myself.
pi_35165918
Het gaat zo, alle inserts worden in 1 string gehouden daarna wordt deze string ingepakt met gzcompress.. bij het uitvoeren wordt gzuncompress op de string losgelaten en daarna wil ik dus per regel uitlezen

maar ik denk dat je idee van jera wel handig is idd..
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_35166799
quote:
Op donderdag 16 februari 2006 20:45 schreef Chandler het volgende:
Het gaat zo, alle inserts worden in 1 string gehouden daarna wordt deze string ingepakt met gzcompress..
Dus je hebt de INSERTs vantevoren wél los? Waarom dan niet een array van strings, serialize() erover en dán gzcompress?
pi_35171985
Ik heb een probleempje!

Ik heb gewoon via een formpje dat je een file kan selecteren. Hij zet dat bestandje dan in een bepaalde folder en staat daar fysiek ook!
De url ernaar komt in de mysql db te staan.
vervolgens word er een link gemaakt op me site en heb ik een mooi kruisje of hij blijft euwig laden alsof hij in een loop zit.

De link al 100x nagekeken. klopt gewoon... want de bestanden die ik zelf via ftp erin heb gezet en die al in de db stonden doen het wel goed.

Het plaatje staat er gewoon fysiek. als ik het met ftp op me desktop plaats heb ik hetzelfde plaatje weer.

ik sta voor een raadsel... iemand hier een idee?

op me webserver thuis doet hij het overigens wel goed gewoon.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')