abonnement Unibet Coolblue
pi_156716369
quote:
7s.gif Op vrijdag 9 oktober 2015 14:01 schreef broer het volgende:
Helaas weet ik niet precies wat je daarmee bedoelt. Sorry.

Als ik in mijn browser de foutmeldingen aanzet, krijg ik bij de overgang tussen de twee pagina's een '500: internal server error'. Als ik het mail-deel uit de tweede pagina haal, krijg ik die foutmelding niet.
http://php.net/manual/en/function.error-reporting.php
http://php.net/manual/en/(...)p#ini.display-errors
pi_156718275
Ik heb geprobeerd mij in te lezen over PHP unit tests, maar na aantal tutorials verder, begrijp ik nog steeds de apeballen van.

Iemand die mij kan bijpraten?
pi_156718543
quote:
0s.gif Op vrijdag 9 oktober 2015 21:17 schreef Robuustheid het volgende:
Ik heb geprobeerd mij in te lezen over PHP unit tests, maar na aantal tutorials verder, begrijp ik nog steeds de apeballen van.

Iemand die mij kan bijpraten?
Unit testen is gewoon een algemeen concept in software development. Wat je er mee doet is 'eenheden' testen. In het geval van een taal als PHP zijn dat vaak functies / methodes. Je doet dan tests waarbij je de functie aanroept met bepaalde parameters en kijkt of de waarde die je terug krijgt ook daadwerkelijk de verwachte uitkomst is.
Vaak doe je per functie een paar van zulke input / output checks om alle codepaden en randgevallen te verifiëren.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  vrijdag 9 oktober 2015 @ 21:53:00 #54
10526 broer
Nutteloze van de nacht.
pi_156719518
quote:
Dank je wel! :)

Ik ben er inmiddels uit, trouwens. Het ging om een haakje of een accolade of iets anders stoms.
pi_156723700
quote:
7s.gif Op vrijdag 9 oktober 2015 21:53 schreef broer het volgende:

[..]

Dank je wel! :)

Ik ben er inmiddels uit, trouwens. Het ging om een haakje of een accolade of iets anders stoms.
Dat is het meestal. Maar als je je error-reporting uit hebt staan is het zoeken naar een speld in een hooiberg.
pi_156726839
quote:
14s.gif Op zaterdag 10 oktober 2015 00:11 schreef KomtTijd... het volgende:

[..]

Dat is het meestal. Maar als je je error-reporting uit hebt staan is het zoeken naar een speld in een hooiberg.
Een goede IDE kan het leven dan wel makkelijker maken. Maar als je daarop moet vertrouwen en anders niets kunt, klopt er ook iets niet. :)
  zondag 18 oktober 2015 @ 19:06:19 #57
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_156926556
Momenteel ben ik een beetje aan het kloten met een thuisserver, maar het lukt niet helemaal. De situatie is als volgt:

Ik heb een lamp-stack geïnstalleerd en de apache root-folder veranderd naar /media/server (een gemounte schijf). Nu wil ik een webpagina magen die alle mappen in /media/HardeSchijf/film (op een andere gemounte schijf dus) oplijst met een link om het filmbestand in die map te openen.

Voor het oplijsten van die mappen heb ik al een manier gevonden, maar ik krijg de link in het filmbestand niet correct. De code die ik momenteel heb, is:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$dir = "../../media/HardeSchijf/Film";
    $filelist = [ ];
    $n=0;

if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
          if($file !== "." and $file !== ".." and $file !== "desktop.ini"
             and $file !== "index.php" and $file !== "lost+found") {
            $filelist[$n] = "$file";
            $n += 1;
        }
        }
        closedir($dh);
    }
}
sort($filelist);
foreach($filelist as $value) {
  echo "<a href='" . $dir. "/" . $value . "/" . $value . ".avi'>" . $value . "</a></br>";
}
Alles daarmee gaat goed; hij echo't een perfecte lijst van mappen, telkens met de naam van de map als link. Maar die link werkt in geen enkel geval, als ik daarop klik krijg ik een 404. Wat doe ik hier verkeerd?

Trouwens, de .avi-uitgang is omdat de bestanden allemaal een andere uitgang hebben (avi, mkv, mp4, etc) en ik telkens met dezelfde map test. Daarop moet ik nog een betere oplossing vinden.
  zondag 18 oktober 2015 @ 19:34:41 #58
91039 mstx
2x1/2 = 1/2 x 1/2
pi_156927290
Je kan nooit linken naar bestanden buiten de webroot. Je zou een symbolic link binnen de webroot kunnen maken die naar die map verwijst.
Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
👾
  zondag 18 oktober 2015 @ 19:53:47 #59
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_156927755
quote:
0s.gif Op zondag 18 oktober 2015 19:34 schreef mstx het volgende:
Je kan nooit linken naar bestanden buiten de webroot. Je zou een symbolic link binnen de webroot kunnen maken die naar die map verwijst.
Maar ik kan ze dus wel oplijsten? -edit: oh, het kan dus wel oplijsten omdat dit server-side gebeurt met PHP, maar niet linken omdat dat browser-side gebeurt.

Anyhow, kan ik dat op zo'n manier doen dat de variabelen bruikbaar blijven? Bijv:
Symlink maken: ./film naar /media/Hardeschijf/Film
In php: echo "<a href='"./film/" . $value . "/" . $value . ".avi'>" . $value . "</a></br>"

Die methode werkt al niet, heb ik gemerkt. Maar misschien op een andere manier?

[ Bericht 6% gewijzigd door Ser_Ciappelletto op 18-10-2015 20:05:05 ]
pi_156952217
quote:
0s.gif Op zondag 18 oktober 2015 19:53 schreef Ser_Ciappelletto het volgende:

[..]

Maar ik kan ze dus wel oplijsten? -edit: oh, het kan dus wel oplijsten omdat dit server-side gebeurt met PHP, maar niet linken omdat dat browser-side gebeurt.

Anyhow, kan ik dat op zo'n manier doen dat de variabelen bruikbaar blijven? Bijv:
Symlink maken: ./film naar /media/Hardeschijf/Film
In php: echo "<a href='"./film/" . $value . "/" . $value . ".avi'>" . $value . "</a></br>"

Die methode werkt al niet, heb ik gemerkt. Maar misschien op een andere manier?
http://php.net/manual/en/function.readfile.php
Let wel goed op je beveiliging, zeker als de webserver vanaf buiten bereikbaar is,
  maandag 19 oktober 2015 @ 20:01:59 #61
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_156952655
quote:
0s.gif Op maandag 19 oktober 2015 19:48 schreef Darkomen het volgende:

[..]

http://php.net/manual/en/function.readfile.php
Let wel goed op je beveiliging, zeker als de webserver vanaf buiten bereikbaar is,
Het is een lokale mediaserver, dus dat is geen probleem.

Ik heb het overigens opgelost door de harde schijf te mounten in de webroot. Dat is minder geklooi.
pi_156952797
quote:
0s.gif Op maandag 19 oktober 2015 20:01 schreef Ser_Ciappelletto het volgende:

[..]

Het is een lokale mediaserver, dus dat is geen probleem.

Ik heb het overigens opgelost door de harde schijf te mounten in de webroot. Dat is minder geklooi.
Weet je héél zeker dat alles lokaal is en altijd lokaal zal blijven?

Dit klinkt namelijk echt als een disaster waiting to happen...
  maandag 19 oktober 2015 @ 20:10:05 #63
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_156952861
quote:
11s.gif Op maandag 19 oktober 2015 20:07 schreef KomtTijd... het volgende:

[..]

Weet je héél zeker dat alles lokaal is en altijd lokaal zal blijven?

Dit klinkt namelijk echt als een disaster waiting to happen...
Waarom zou dat niet zo zijn? Dan zou ik eerst mijn router zo moeten configureren dat 'ie naar die server verwijst en zo, en dat heb ik nooit gedaan en ben ik ook niet van plan.
pi_156953101
Maar als je over een jaar toch een poortje open zet omdat je iets extern wilt testen of zo, is dus je complete systeem world readable...
  maandag 19 oktober 2015 @ 20:22:28 #65
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_156953224
quote:
14s.gif Op maandag 19 oktober 2015 20:18 schreef KomtTijd... het volgende:
Maar als je over een jaar toch een poortje open zet omdat je iets extern wilt testen of zo, is dus je complete systeem world readable...
De kans is groter dat ik over twee weken het hele systeem opnieuw moet installeren omdat het allemaal kapot is. :P

Overigens zou dat een kwestie zijn van de schijf unmounten zolang ik het poortje open heb staan.
  zaterdag 24 oktober 2015 @ 22:03:10 #66
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_157071737
Volgende vraagje: als ik met PHP een MySQL tabel opvraag en wegschrijf, krijg ik maar een deel van de tabel.

De code:
1
2
3
4
5
6
7
8
9
10
11
   $vraagact= "SELECT * FROM " . $q;
   $output = $conn->query($vraagact);
   echo "<table><thead>Actief</thead>";
   if ($output->num_rows > 0) {
      while($row = $output->fetch_assoc()) {
        echo "<tr><td>" . $row["Tijd"] . "</td><td>" . $row["Indiciatief"] . "</td><td>" . $row["Conjunctief"]."</td><td>" . $row["Imperatief"]."</td><td>" . $row["Infinitief"]. "</td><td>" . $row["Participium"]."</td></tr>";
      }
   } else {
       echo "0 results";
     }
     echo "</table>";
Het resultaat:
SPOILER
Om spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
Bij "Futurum" en "Fut. Exactum" zouden nog zes woorden moeten staan, die er niet staan. In MySQL staat het correct. Het veranderen van 'Fut' in iets anders heeft geen zin. Ik heb echt geen idee waar dit verder aan kan liggen.

Er zijn trouwens vijf tabellen met ongeveer dezelfde inhoud, die hetzelfde gedrag vertonen: telkens valt de eerste kolom weg bij 'futurum' en 'fut. exactum'.
pi_157082102
quote:
0s.gif Op zaterdag 24 oktober 2015 22:03 schreef Ser_Ciappelletto het volgende:
Volgende vraagje: als ik met PHP een MySQL tabel opvraag en wegschrijf, krijg ik maar een deel van de tabel.

De code:
[ code verwijderd ]

Het resultaat:
SPOILER
Om spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
Bij "Futurum" en "Fut. Exactum" zouden nog zes woorden moeten staan, die er niet staan. In MySQL staat het correct. Het veranderen van 'Fut' in iets anders heeft geen zin. Ik heb echt geen idee waar dit verder aan kan liggen.

Er zijn trouwens vijf tabellen met ongeveer dezelfde inhoud, die hetzelfde gedrag vertonen: telkens valt de eerste kolom weg bij 'futurum' en 'fut. exactum'.
"Correct" in MySQL is wel een vage term. Wat staat er precies?
  zondag 25 oktober 2015 @ 12:57:07 #68
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_157082333
quote:
0s.gif Op zondag 25 oktober 2015 12:47 schreef Light het volgende:

[..]

"Correct" in MySQL is wel een vage term. Wat staat er precies?
De tabel zoals hij hoort, met de twaalf entries die op de site wegvallen.

SPOILER
Om spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
pi_157082398
En een screenshot van een render van de output van je script is ook nogal vaag, dump dan gewoon het resultaat van je query.
  zondag 25 oktober 2015 @ 13:02:15 #70
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_157082475
quote:
14s.gif Op zondag 25 oktober 2015 12:59 schreef KomtTijd... het volgende:
En een screenshot van een render van de output van je script is ook nogal vaag, dump dan gewoon het resultaat van je query.
Ik kreeg dat niet gekopieerd vanuit Putty. :')
pi_157082580
quote:
14s.gif Op zondag 25 oktober 2015 12:59 schreef KomtTijd... het volgende:
En een screenshot van een render van de output van je script is ook nogal vaag, dump dan gewoon het resultaat van je query.
Ik zie hier in ieder geval geen html-zooi in. Bij iets dat door een browser niet goed gerenderd wordt, is dat een van de eerste dingen waar ik aan denk.
pi_157082683
quote:
0s.gif Op zaterdag 24 oktober 2015 22:03 schreef Ser_Ciappelletto het volgende:
Volgende vraagje: als ik met PHP een MySQL tabel opvraag en wegschrijf, krijg ik maar een deel van de tabel.

De code:
[ code verwijderd ]

Het resultaat:
SPOILER
Om spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
Bij "Futurum" en "Fut. Exactum" zouden nog zes woorden moeten staan, die er niet staan. In MySQL staat het correct. Het veranderen van 'Fut' in iets anders heeft geen zin. Ik heb echt geen idee waar dit verder aan kan liggen.

Er zijn trouwens vijf tabellen met ongeveer dezelfde inhoud, die hetzelfde gedrag vertonen: telkens valt de eerste kolom weg bij 'futurum' en 'fut. exactum'.
In je code gebruik je
1
2
3
<?php
$row
["Indiciatief"]
?>
maar de kolom heet "Indicatief". Je probeert dus een niet-bestaande kolom uit te lezen.
pi_157082727
In de uitvoer is alleen de kolom conjunctief te zien, en die is leeg voor de futurum-vormen.
  zondag 25 oktober 2015 @ 13:15:04 #74
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_157082738
quote:
0s.gif Op zondag 25 oktober 2015 13:11 schreef Light het volgende:

[..]

In je code gebruik je
[ code verwijderd ]

maar de kolom heet "Indicatief". Je probeert dus een niet-bestaande kolom uit te lezen.
Ah verrek, je hebt helemaal gelijk. Kut, wat een blunder.

Bedankt voor de hulp alleszins!
pi_157082911
E_NOTICE blijkt dus toch weer verrot handig te zijn.
  dinsdag 27 oktober 2015 @ 13:51:21 #76
37634 wobbel
Da WoBBeL King
pi_157133913
Ik heb weer 'n kut vraag...hoe doe ik een join maar dan omgekeerd :P

Tabel 1: Klanten met een klant ID

Tabel 2: Bestellingen gekoppeld aan klant ID

Ik wil nu alle klanten krijgen die géén bestelling hebben. Doe ik dit ook gewoon met een JOIN ofzo? Want die moet ik altijd koppelen op de ID's en dat wil ik nu juist niet -O-
pi_157134356
quote:
0s.gif Op dinsdag 27 oktober 2015 13:51 schreef wobbel het volgende:
Ik heb weer 'n kut vraag...hoe doe ik een join maar dan omgekeerd :P

Tabel 1: Klanten met een klant ID

Tabel 2: Bestellingen gekoppeld aan klant ID

Ik wil nu alle klanten krijgen die géén bestelling hebben. Doe ik dit ook gewoon met een JOIN ofzo? Want die moet ik altijd koppelen op de ID's en dat wil ik nu juist niet -O-
Je kunt een LEFT JOIN gebruiken.
Voor rijen die niet gekoppeld konden worden krijg je NULL terug waarop je kunt filteren.
When the student is ready, the teacher will appear.
When the student is truly ready, the teacher will disappear.
pi_157134454
quote:
0s.gif Op dinsdag 27 oktober 2015 13:51 schreef wobbel het volgende:
Ik heb weer 'n kut vraag...hoe doe ik een join maar dan omgekeerd :P

Tabel 1: Klanten met een klant ID

Tabel 2: Bestellingen gekoppeld aan klant ID

Ik wil nu alle klanten krijgen die géén bestelling hebben. Doe ik dit ook gewoon met een JOIN ofzo? Want die moet ik altijd koppelen op de ID's en dat wil ik nu juist niet -O-
Jawel, je wilt wel joinen op id's, maar daarna wil je alle regels waar die join resultaten oplevert er weer uit filteren.
Zoals Aether hierboven ook zegt:

1
2
3
4
SELECT klant.*
FROM klant
    LEFT JOIN bestelling ON klant.id = bestelling.klant_id
WHERE bestelling.id IS NULL;
pi_157134834
quote:
7s.gif Op dinsdag 27 oktober 2015 14:12 schreef Aether het volgende:

[..]

Je kunt een LEFT JOIN gebruiken.
Voor rijen die niet gekoppeld konden worden krijg je NULL terug waarop je kunt filteren.
Je kan dan beter WHERE NOT EXISTS() gebruiken.

SELECT K.ID
FROM Klanten AS K
WHERE NOT EXISTS ( SELECT 1 FROM Bestellingen AS B WHERE B.KlantID=K.ID )
  woensdag 28 oktober 2015 @ 16:50:38 #80
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_157161864
Ik heb een pagina buiten de webroot staan waarin een form action voorkomt die verwijst naar een php-scriptje dat ook buiten de webroot staat.

De situatie is als volgt:
- Webroot
- Anderefolder -> (pagina.php met <form action=script.php>), script.php.

Pagina.php zet ik liever niet in de webroot. Kan ik een verwijzing maken vanuit die andere map?
pi_157164929
quote:
19s.gif Op dinsdag 27 oktober 2015 14:37 schreef TwenteFC het volgende:

[..]

Je kan dan beter WHERE NOT EXISTS() gebruiken.

SELECT K.ID
FROM Klanten AS K
WHERE NOT EXISTS ( SELECT 1 FROM Bestellingen AS B WHERE B.KlantID=K.ID )
Dan heb je een dependant subquery en waarschijnlijk minder optimalisatiemogelijkheden. Bij kleine aantallen (tientallen) maakt dat niet uit, bij grotere aantallen klanten en/of bestellingen zou ik het eerst vergelijken om te zien welke oplossing beter presteert.
pi_157167064
quote:
0s.gif Op woensdag 28 oktober 2015 16:50 schreef Ser_Ciappelletto het volgende:
Pagina.php zet ik liever niet in de webroot. Kan ik een verwijzing maken vanuit die andere map?
Waarom? Als je een rare oplossing moet zoeken, dan betekend het meestal dat je iets fout doet.
pi_157176826
Ik weet dat PHP kan checken met wat voor soort bowser je de site bekijkt. Zou je er dan voor kunnen zorgen dat je een andere pagina indeling voor je mobiel krijgt dan 'gewoon' achter de computer?
  donderdag 29 oktober 2015 @ 08:06:34 #84
37634 wobbel
Da WoBBeL King
pi_157177063
quote:
0s.gif Op woensdag 28 oktober 2015 19:17 schreef Light het volgende:

[..]

Dan heb je een dependant subquery en waarschijnlijk minder optimalisatiemogelijkheden. Bij kleine aantallen (tientallen) maakt dat niet uit, bij grotere aantallen klanten en/of bestellingen zou ik het eerst vergelijken om te zien welke oplossing beter presteert.
Het gaat om een paar duizend records, dus op zich valt het mee. Maar bedankt voor het meedenken, zoeken met NULL functioneert inderdaad :) Weer wat geleerd vandaag.

Gaan we ons vandaag eens inlezen in DOMDocument...moet een 12e span uitlezen uit een HTML document _O-
pi_157187823
quote:
0s.gif Op donderdag 29 oktober 2015 08:06 schreef wobbel het volgende:

[..]

Het gaat om een paar duizend records, dus op zich valt het mee. Maar bedankt voor het meedenken, zoeken met NULL functioneert inderdaad :) Weer wat geleerd vandaag.

Gaan we ons vandaag eens inlezen in DOMDocument...moet een 12e span uitlezen uit een HTML document _O-
Kun je die span niet op iets anders pakken dan dat het het 12e item is? Iets met een id, class of ander attribuut zou het leven veel makkelijker maken, dan ben je niet meer volledig afhankelijk van de volgorde waarin de items staan.
  donderdag 29 oktober 2015 @ 19:54:36 #86
308438 Ser_Ciappelletto
Semi-professionele SJW
pi_157188833
quote:
0s.gif Op woensdag 28 oktober 2015 20:25 schreef Darkomen het volgende:

[..]

Waarom? Als je een rare oplossing moet zoeken, dan betekend het meestal dat je iets fout doet.
Geen idee of het een rare oplossing is en of ik iets fout doe. :P
  FOK!mycroftheld zaterdag 31 oktober 2015 @ 19:56:35 #87
128465 verified  bondage
niet meer aanwezig op FOK!
pi_157229352
Ik heb het in het verleden al een keer eerder gevraagd maar helaas is het tot dusver nog niet gelukt, probeer het daarom nog maar een keer :7

Wat ik wil is in een sql query quotes uit reacties filteren. Ik heb hiervoor iets geschreven maar dit werkt helaas niet naar wens. Het probleem is dat alleen de eerste quote eruit wordt gefilterd en de rest wordt genegeerd.

Iemand een idee of het überhaupt mogelijk is in sql en wat mijn opties zijn? Mijn idee zou zijn om er een loop van te maken en net zo vaak itereren dat het hele bericht doorlopen is. Ik kan echter geen bruikbare voorbeelden vinden.

Dit is de query die ik nu gebruik:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
             SELECT ...
                    CASE WHEN LOCATE( '<blockquote>', `contents` ) != 0 THEN 
                            MID( 
                               `contents`, 
                               LOCATE( '<blockquote>', `contents` ) + 12, 
                               (LOCATE( '</blockquote>', `contents` ) - LOCATE( '<blockquote>', `contents` )) - 12 
                            ) 
                    ELSE 
                            '' 
                    END AS post_quote, 
                    CASE WHEN LOCATE( '<blockquote>', `contents` ) != 0 THEN 
                            CONCAT_WS( 
                               LEFT( `contents` , LOCATE( '<blockquote>', `contents`) - 1), ' ', 
                               RIGHT( `contents` , LENGTH(`contents`) - (LOCATE( '</blockquote>', `contents` ) + 12)) 
                            ) 
                    ELSE 
                            `contents` 
                    END AS post_contents, 
                    ...
            FROM fok_topic, fok_post 
            WHERE ...

Hier komen twee velden uit, namelijk: post_quote en post_contents. Het eerste veld moet alle quotes bevatten en het tweede de overige tekst.

Hieronder een voorbeeld van de data welke doorzocht wordt:
1
2
3
4
5
6
<blockquote><font size="1" face="verdana, aial, helvetica">quote:</font>
<hr>Feedback is geen vrijblijvend "post hier wat je wilt"-forum. Als je denkt grappig te 
moeten zijn, je postaantal te moeten opkrikken of om een andere reden een post plaatst die in de 
FB-context totaal geen nut heeft, loop je de kans dat je post verwijderd wordt.<hr>
</blockquote>Nog steeds geldt in Feedback het "post dan niks"-principe: als je niks te 
melden hebt, ga dan wat anders doen. Er moeten nog te veel compleet nutteloze posts verwijderd worden...

Edit: Deze data wordt aan een Sphinx zoekserver index gevoed en ik kan helaas niets manipuleren. Dit is de reden dat het in de query moet worden gedaan.

[ Bericht 0% gewijzigd door bondage op 31-10-2015 20:11:42 ]
pi_157229541
Volgens mij heeft MySQL nog steeds niet echt lekkere support voor regular expressions, maar dit is een schoolvoorbeeld van een situatie waarbij je die wilt gebruiken. ;)
Is het geen optie om gewoon het geheel te selecteren en de regex replace in PHP te doen?
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  FOK!mycroftheld zaterdag 31 oktober 2015 @ 20:06:24 #89
128465 verified  bondage
niet meer aanwezig op FOK!
pi_157229638
quote:
0s.gif Op zaterdag 31 oktober 2015 20:03 schreef Monolith het volgende:
Volgens mij heeft MySQL nog steeds niet echt lekkere support voor regular expressions, maar dit is een schoolvoorbeeld van een situatie waarbij je die wilt gebruiken. ;)
Is het geen optie om gewoon het geheel te selecteren en de regex replace in PHP te doen?
Jup, klopt :) Ik was vergeten te vermelden dat het niet naar een PHP script gaat. Deze data wordt aan een Sphinx zoekserver index gevoed en ik kan helaas niets manipuleren. Dit moet dus in de query worden gedaan.
pi_157229772
quote:
14s.gif Op zaterdag 31 oktober 2015 20:06 schreef bondage het volgende:

[..]

Jup, klopt :) Ik was vergeten te vermelden dat het niet naar een PHP script gaat. Deze data wordt aan een Sphinx zoekserver index gevoed en ik kan helaas niets manipuleren. Dit moet dus in de query worden gedaan.
Sphinx ken ik niet echt als search engine, maar heeft die niet net als bijvoorbeeld ElastisSearch en SOLR gewoon filtermogelijkheden op de gevoede data?
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  FOK!mycroftheld zaterdag 31 oktober 2015 @ 20:17:45 #91
128465 verified  bondage
niet meer aanwezig op FOK!
pi_157229925
quote:
1s.gif Op zaterdag 31 oktober 2015 20:11 schreef Monolith het volgende:

[..]

Sphinx ken ik niet echt als search engine, maar heeft die niet net als bijvoorbeeld ElastisSearch en SOLR gewoon filtermogelijkheden op de gevoede data?
Het is bij Sphinx mogelijk om gebruik te maken van een xml pipe. Dan kan ik de data zelf aan de indexer voeden vanuit een php script. Dit is echter zeer traag en daarom geen optie. Helaas is het maar een simpele server en als er heel veel tegelijk uitgevoerd moet worden vertraagt de boel.
pi_157230201
quote:
14s.gif Op zaterdag 31 oktober 2015 20:17 schreef bondage het volgende:

[..]

Het is bij Sphinx mogelijk om gebruik te maken van een xml pipe. Dan kan ik de data zelf aan de indexer voeden vanuit een php script. Dit is echter zeer traag en daarom geen optie. Helaas is het maar een simpele server en als er heel veel tegelijk uitgevoerd moet worden vertraagt de boel.
Is zoiets geen optie?
https://github.com/hholzgra/mysql-udf-regexp

Als je tenminste UDFs kunt gebruiken op je server.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  FOK!mycroftheld zaterdag 31 oktober 2015 @ 20:30:38 #93
128465 verified  bondage
niet meer aanwezig op FOK!
pi_157230295
quote:
1s.gif Op zaterdag 31 oktober 2015 20:27 schreef Monolith het volgende:

[..]

Is zoiets geen optie?
https://github.com/hholzgra/mysql-udf-regexp

Als je tenminste UDFs kunt gebruiken op je server.
Dank, ga ik even checken. Het is mijn eigen server, denk dat ik die mogelijkheid wel heb. En anders creëer ik deze (8>

Heb echter nog niet eerder iets met UDFs gedaan dus even uitzoeken hoe en wat.
pi_157277098
Ik heb een bestan met op elke lijn 2 of meerdere bestandsnamen. Deze zijn gescheiden door een spatie en spaties in bestandsnamens geescaped. (Voor de nieuwsgierigen, output van fdupes -1 -r -S ./)

Ik wil deze lijnen met preg_split splitten, maar ik breek m'n hersens over hoe ik met die escaped spatie om moet gaan. Hoe krijg ik dit voor elkaar?

Zelfs $files = str_getcsv($line," ","","\\"); biedt geen uitkomst.. (Waarom herkent ie de backslashes niet?)

[ Bericht 14% gewijzigd door Keiichi op 02-11-2015 21:11:04 ]
pi_157279732
spaties matchen op [^\\]\s ?
pi_157285270
quote:
0s.gif Op maandag 2 november 2015 20:36 schreef Keiichi het volgende:
Ik heb een bestan met op elke lijn 2 of meerdere bestandsnamen. Deze zijn gescheiden door een spatie en spaties in bestandsnamens geescaped. (Voor de nieuwsgierigen, output van fdupes -1 -r -S ./)

Ik wil deze lijnen met preg_split splitten, maar ik breek m'n hersens over hoe ik met die escaped spatie om moet gaan. Hoe krijg ik dit voor elkaar?

Zelfs $files = str_getcsv($line," ","","\\"); biedt geen uitkomst.. (Waarom herkent ie de backslashes niet?)
Zoiets?
1
2
3
4
5
<?php 
$s 
'123.php 456\ 789.php ab\ c\ def.php';
$a preg_split'~(?<!\\\)\\s~'$s ); 
print_r($a); 
?>
1
2
3
4
5
6
Array
(
    [0] => 123.php
    [1] => 456\ 789.php
    [2] => ab\ c\ def.php
)
When the student is ready, the teacher will appear.
When the student is truly ready, the teacher will disappear.
  FOK!mycroftheld zaterdag 7 november 2015 @ 14:14:37 #97
128465 verified  bondage
niet meer aanwezig op FOK!
pi_157380875
Ik zit met een regex probleempje en aangezien ik nogal faal als het aankomt op reguliere expressies kom er niet uit ;(

Wat ik wil is plaatjes uit posts filteren, echter moeten plaatjes met een bepaalde class wel blijven staan.

Dit moet blijven:
1<img class="rde_img_smiley" src="http://i.fok.nl/s/clown.gif" width="15" height="15" alt=":+" />

Dit moet weg:
1<img data-src="http://www.voorbeeld.com/bla.jpg" style="visibility:hidden;" />

Ik gebruik deze regex maar die haalt alle afbeeldingen weg:

1
2
3
<?php
$result 
preg_replace('/<img(?<!class="rde_img_smiley")[^>]+\>/i'"[afbeelding verwijderd]"$post_contents);
?>

Iemand idee hoe dit op te lossen?
pi_157385040
quote:
11s.gif Op zaterdag 7 november 2015 14:14 schreef bondage het volgende:
Ik zit met een regex probleempje en aangezien ik nogal faal als het aankomt op reguliere expressies kom er niet uit ;(

Wat ik wil is plaatjes uit posts filteren, echter moeten plaatjes met een bepaalde class wel blijven staan.

Dit moet blijven:
[ code verwijderd ]

Dit moet weg:
[ code verwijderd ]

Ik gebruik deze regex maar die haalt alle afbeeldingen weg:
[ code verwijderd ]

Iemand idee hoe dit op te lossen?
Some people, when confronted with a problem, think
“I know, I'll use regular expressions.” Now they have two problems. (bron / meer info)

Ik zou DOMDocument gebruiken, in combinatie met DOMNode::removeChild() (die je gewoon hebt, want DOMDocument extends DOMNode).
  Moderator / Redactie Sport zaterdag 7 november 2015 @ 18:22:45 #99
359864 crew  Nattekat
De roze zeekat
pi_157385295
Als je al RE's wilt gebruiken, dan hoef je enkel te kijken of de string 'class=*"rde_smiley"' (niet) bevat.

Dus .*(class\=).*(\"rde_smiley\").*
100.000 katjes
Maakte de 100.000e post in BIT
Er eens op uit?
pi_157385441
quote:
0s.gif Op zaterdag 7 november 2015 18:22 schreef Nattekat het volgende:
Als je al RE's wilt gebruiken, dan hoef je enkel te kijken of de string 'class=*"rde_smiley"' (niet) bevat.

Dus .*(class\=).*(\"rde_smiley\").*
En dan moet je er nog rekening mee houden dat die class kan worden voorafgegaan en/of gevolgd door een andere class. En dat een afbeelding zonder die class gevolgd kan worden door een met die class, dan moet je wel de goede afbeelding verwijderen. En over een half jaar moet je ook nog snappen wat de regex doet (ook als het er niet in commentaar bij staat).
abonnement Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')