abonnement Unibet Coolblue Bitvavo
pi_33843100
Je volgorde van post vars klopt niet;
ie. progseltje:

$birth = mktime(0,0,0,intval($_POST['month']), intval($_POST['day']), intval($_POST['year']));
if(strtotime('+18 years', $birth) > mktime()) {
//te jong.
}

-r-
pi_33852901
Chandler of Roonaan geen oplossing voor mij ? =)
ne okuyon, bokmu var?
pi_33854882
quote:
Op maandag 9 januari 2006 00:09 schreef saban het volgende:
Chandler of Roonaan geen oplossing voor mij ? =)
Ik snap je vraag wel, maar je voorbeeld van een fout niet. Je hebt het over id's 10, 11, 13 en 14 waarvan 10 de oudste is (zover ik kan zien). Toch zeg je dat ie 13 teruggeeft?
pi_33854985
quote:
Op maandag 9 januari 2006 01:35 schreef JeRa het volgende:

[..]

Ik snap je vraag wel, maar je voorbeeld van een fout niet. Je hebt het over id's 10, 11, 13 en 14 waarvan 10 de oudste is (zover ik kan zien). Toch zeg je dat ie 13 teruggeeft?
Zover ik weet kan je niet ordenen in je group statements toch?

Ik dacht eerst dat hij wel min of max kon gebruiken maar dat gaat alleen op voor tijd. Als hij de message ook wil krijgen wordt dan ingewikkeld. Dit wordt op alfanum gesorteerd.
pi_33856805
quote:
Op zondag 8 januari 2006 19:26 schreef saban het volgende:
Ik heb de volgende tabel
[ code verwijderd ]

Met de volgende data erin;
[ code verwijderd ]

Ik heb een query om de laatste 10 'inserts' uit te lezen, samengevoegt (GROUP) op ber_id;
[ code verwijderd ]

Hij leest inderdaad de laatste 10 inserts uit, ook voegt (GROUP) hij het samen op ber_id, maar hij GROUP't ze precies andersom.
Als ik 2 records achter elkaar heb met dezelfde ber_id, dan laat hij de oudste (eerste) record zien, in plaats van de laatste.
Kijk naar id 13 en 14. Hij voegt 10, 11, 13 en 14 samen omdat ze dezelfde ber_id hebben, maar in plaats van 14 te laten zien, laat hij mij 13 zien.

Iemand een beter/juiste query voor me ?
ik gebruik deze op de weblog om de laatste (in mijn geval unieke) reacties te laten zien:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
SELECT 
    r.site_id, 
    b.header,
    MAX(r.time) AS tijd
FROM 
    b JOIN reacts AS r ON (b.id = r.site_id)
WHERE 
    r.status = 'active'
AND 
    b.status = 'active'
AND 
    r.time > (UNIX_TIMESTAMP() - 259200)
GROUP BY
    r.site_id, b.header
ORDER BY 
    `tijd` DESC
LIMIT 
   0 , 8
pi_33857595
quote:
Op maandag 9 januari 2006 01:35 schreef JeRa het volgende:

[..]

Ik snap je vraag wel, maar je voorbeeld van een fout niet. Je hebt het over id's 10, 11, 13 en 14 waarvan 10 de oudste is (zover ik kan zien). Toch zeg je dat ie 13 teruggeeft?
Waarom is id 10 het oudste ? Ik sorteer op tijd, en id 14 heeft het hoogste waarde (20060108191526), maar hij geeft helaas id 13 terug.
ne okuyon, bokmu var?
pi_33857673
Nu ik er even over nadenk, is dit ook mogelijk

1
2
3
4
5
SELECT id, ber_id, onderwerp, soort
FROM `last_reacties` 
GROUP BY onderwerp
ORDER BY id DESC 
LIMIT 0 , 10 


Maar weer laat hij geen id 14 zien, en wel id 13.
ne okuyon, bokmu var?
pi_33857744
Kun je niet de query gebruiken die rickmans aanbiedt?

En ik snap 'm nu wel weer, het komt er op neer dat je geen ORDER kunt doen vóór een GROUP BY om zo de groepering aan te passen. Je kunt ORDER wel gebruiken om de resultset aan te passen though. Gebruik de MAX()-(group)functie om de hoogste waarde te vinden
pi_33859556
even een snel vraagje.

ik heb een $row->Date van zo'n 20-25 chars. Ik wil alleen de 1e 10 chars laten zien. Ik dacht dat dat kon met echo $row->Date{0,10} maar dat lijkt niet te werken. ik heb hier eventueel wel n wat uitgebreidere functie voor, maar ik dacht dat het ook op deze manier kon.

Ik heb t fout zeker
As a rule, I never touch anything more sophisticated and delicate than myself.
pi_33859584
substr($row->Date,0,10);

?
pi_33859759
tx
As a rule, I never touch anything more sophisticated and delicate than myself.
pi_33861721
quote:
Op maandag 9 januari 2006 09:09 schreef JeRa het volgende:
Kun je niet de query gebruiken die rickmans aanbiedt?

En ik snap 'm nu wel weer, het komt er op neer dat je geen ORDER kunt doen vóór een GROUP BY om zo de groepering aan te passen. Je kunt ORDER wel gebruiken om de resultset aan te passen though. Gebruik de MAX()-(group)functie om de hoogste waarde te vinden
Ik gebruik nu de MAX functie, het werkt al iets beter, maar nog steeds niet 'bug-loos'. Helaas ben ik onbekend met JOINS.
ne okuyon, bokmu var?
pi_33863189
quote:
Op maandag 9 januari 2006 12:21 schreef saban het volgende:

[..]

Ik gebruik nu de MAX functie, het werkt al iets beter, maar nog steeds niet 'bug-loos'. Helaas ben ik onbekend met JOINS.
Hier heb je geen JOIN voor nodig. Ik heb je tabel geprobeerd en ik merk op dat je het veld 'tijd' als een VARCHAR opslaat. Dit type werkt niet zo geweldig met de MAX()-functie. Beter sla je die tijd op als een Unix Timestamp (epoch), dit is het aantal seconden vanaf 1 januari 1970. Deze kun je in MySQL opvragen als UNIX_TIMESTAMP() en neemt als UNSIGNED INT maar 4 bytes in beslag, dit in tegenstelling tot jouw huidige veld dat een veelvoud van dat inneemt.

Als je een Unix timestamp als veld gebruikt kun je wél die MAX() gebruiken dan ziet je query er zo uit:

1
2
3
4
5
SELECT id, ber_id, onderwerp, MAX( tijd ) AS mtijd, soort, IP
FROM last_reacties
GROUP BY ber_id
ORDER BY mtijd DESC
LIMIT 0 , 10
pi_33864749
Super simpele vraag misschien, maar ik kom ergens niet uit.

Ik heb een dir met daarin een 3tal bestanden.
index.php hoofdpagina, met alle opmaak
config.inc.php include file met allemaal variabelen met settings, geinclude in index.php
functions.inc.php include file met allemaal functies die gebruik maken van de variabelen uit config.inc.php, geinclude in index.php

Als ik bovenstaande doe, dan zijn de waardes van de variabelen leeg. De functies nemen de variableen niet over die gedefinieerd staan in config.inc.php. Hoe regel ik dat zij dat wel overnemen? Iets global oid maken?
pi_33864827
In principe zou je die variabelen mee moeten geven bij de functie aanroep als argumenten. Als dat echt niet mogelijk is, zou je kunnen overwegen om define() te gebruiken als het constanten betreft, of als het écht niet anders kan onderstaande te gebruiken:
1
2
3
4
5
<?php
function ugly() {
  GLOBAL
$uncleFester, $causinIt;
}
?>


-r-
pi_33864901
global gebruiken is toch vies? of mag dat tegenwoordig wel?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_33865144
quote:
Op maandag 9 januari 2006 14:12 schreef Ro�a� het volgende:
In principe zou je die variabelen mee moeten geven bij de functie aanroep als argumenten. Als dat echt niet mogelijk is, zou je kunnen overwegen om define() te gebruiken als het constanten betreft, of als het écht niet anders kan onderstaande te gebruiken:
[ code verwijderd ]

-r-
thnx

ik definieer bv in config.inc.php het eerste woord dat na de url komt (www.example.org/woord/)
Als ik het niet global maak, moet ik iedere keer in een functie opnieuw de string uitlezen, choppen en er een var van maken. Vind ik minder handig. Zie je daar een alternatief voor?
pi_33865369
quote:
Op maandag 9 januari 2006 14:09 schreef ToBe het volgende:
Super simpele vraag misschien, maar ik kom ergens niet uit.

Ik heb een dir met daarin een 3tal bestanden.
index.php hoofdpagina, met alle opmaak
config.inc.php include file met allemaal variabelen met settings, geinclude in index.php
functions.inc.php include file met allemaal functies die gebruik maken van de variabelen uit config.inc.php, geinclude in index.php

Als ik bovenstaande doe, dan zijn de waardes van de variabelen leeg. De functies nemen de variableen niet over die gedefinieerd staan in config.inc.php. Hoe regel ik dat zij dat wel overnemen? Iets global oid maken?
Er zijn meerdere opties.

1. Zet heb in de globals array: $GLOBALS['Varname'] = "Tralala";

2. Gebruik define, zodat het een constante wordt: DEFINE(VAR, "Tralala");

3. Maak hem global in de functie:

function Foo() {
global $var;

echo $var;
}

Het mooiste is inderdaad gewoon om hem mee te geven aan de functie. Dat houdt je functie ook clean.
pi_33865381
$parts = explode('/', $_SERVER['QUERY_STRING']);
define('WOORD1', isset($parts[0]) ? $parts[0] : 'default');

if(WOORD1 == 'woord') {
}

-r-
pi_33865537
quote:
Op maandag 9 januari 2006 14:27 schreef Ro�a� het volgende:
$parts = explode('/', $_SERVER['QUERY_STRING']);
define('WOORD1', isset($parts[0]) ? $parts[0] : 'default');

if(WOORD1 == 'woord') {
}

-r-
Thnx peeps, ik neem het mee in overweging. Even spelen wat ik het lekkerst vind
pi_33865541
quote:
Op maandag 9 januari 2006 14:27 schreef Ro�a� het volgende:
$parts = explode('/', $_SERVER['QUERY_STRING']);
define('WOORD1', isset($parts[0]) ? $parts[0] : 'default');

if(WOORD1 == 'woord') {
}

-r-
Ehm, ik weet niet of het zo'n briljant plan is om misbruik te maken van constanten. Constanten horen constant te zijn, en niet variabel nu definiëer je een 'constante' die elke request anders is, daar is natuurlijk weinig constant aan en is mijns inziens nogal vies.

Beter geef je voor een functie de benodigde variabelen via de parameters door, eventueel via een volledig $config-object.
pi_33865720
quote:
Op maandag 9 januari 2006 14:32 schreef JeRa het volgende:

[..]

Ehm, ik weet niet of het zo'n briljant plan is om misbruik te maken van constanten. Constanten horen constant te zijn, en niet variabel nu definiëer je een 'constante' die elke request anders is, daar is natuurlijk weinig constant aan en is mijns inziens nogal vies.

Beter geef je voor een functie de benodigde variabelen via de parameters door, eventueel via een volledig $config-object.
Ja en nee. Ik vind het beter dan het overbodig rondslingeren van ellenlange argumentlijsten omdat een serie telkens terugkeerende runtime sermi-constanten mee te geven.
Doe jij dan nooit:
define('LANG', @$_REQUEST['lang'] == 'nl' ? 'nl' : 'en');
Of soortgelijk?

-r-
pi_33865822
quote:
Op maandag 9 januari 2006 14:37 schreef Ro�a� het volgende:

[..]

Ja en nee. Ik vind het beter dan het overbodig rondslingeren van ellenlange argumentlijsten omdat een serie telkens terugkeerende runtime sermi-constanten mee te geven.
Doe jij dan nooit:
define('LANG', @$_REQUEST['lang'] == 'nl' ? 'nl' : 'en');
Of soortgelijk?

-r-
Nee, alleen voor échte constanten waarvan ik niet verwacht dat ze binnen afzienbare tijd zullen veranderen doe ik op die manier. Voor de rest doe ik het zo (voorbeeldje):

$config = array();
...
$config['charset'] = 'iso-8859-15';
$config['lang'] = (getCookie('lang') == 'nl') ? 'nl' : 'en';
...
doSomething($config);

Of heel eventueel, als ik de parameters zat ben, dit:

function doSomething()
{
global $config;
//etc
}
pi_33869581
quote:
Op maandag 9 januari 2006 13:12 schreef JeRa het volgende:

[..]

Hier heb je geen JOIN voor nodig. Ik heb je tabel geprobeerd en ik merk op dat je het veld 'tijd' als een VARCHAR opslaat. Dit type werkt niet zo geweldig met de MAX()-functie. Beter sla je die tijd op als een Unix Timestamp (epoch), dit is het aantal seconden vanaf 1 januari 1970. Deze kun je in MySQL opvragen als UNIX_TIMESTAMP() en neemt als UNSIGNED INT maar 4 bytes in beslag, dit in tegenstelling tot jouw huidige veld dat een veelvoud van dat inneemt.

Als je een Unix timestamp als veld gebruikt kun je wél die MAX() gebruiken dan ziet je query er zo uit:
[ code verwijderd ]
Dan moet ik waarschijnlijk heel mijn database structuur ombouwen. Of ik moet het omslachtig doen door een extra tabel te maken met enkel de laatste reacties, gebaseerd op jou code.
ne okuyon, bokmu var?
pi_33901221
ik las ergens iets over serverload qua processorusage en memusage. hoe tjek ik dat bij n eigen script?
As a rule, I never touch anything more sophisticated and delicate than myself.
pi_33901664
mem_get_usage() dacht ik. processor power weet ik niet.
  dinsdag 10 januari 2006 @ 14:04:30 #129
65471 SkaterSam
Lurking Galore
pi_33901821
Verdorie mijn script wil een while loop niet laten werken...

1
2
3
4
5
6
7
8
9
10
$db->query("SELECT * FROM nieuws WHERE n_status = 'visible' ORDER BY n_id DESC");
if (mysql_num_rows($db->resultaten) <= 0) {
   ?>
   <h2>Geen resultaten</h2>
   <p>
      Er zijn geen resultaten gevonden in de database
   </p>
   <?php
} else {
   while ($nieuws = $db->fetch()) { //loop hier }

Nu krijg ik dus de hele tijd maar 1 resultaat in plaats van de 5 die er moeten zijn, ligt dit aan mijn query? In een ander script werkt een soortgelijke query met while loop namelijk wel.

En een tweede vraag is hoe je de eerste vijftig woorden van een tekstbericht kan halen? Moet dat zo:

1
2
3
$bericht = explode(' ', $nieuws['nieuws']);
//echo het resultaat
echo substr(implode(' ', $bericht), 0, 50);

Maar dan krijg ik alleen de eerste 50 woorden...
Let's make life easy
Typo's are the demon spawn from hell !
pi_33902128
je wijst geen nieuwe data toe aan $db in de while loop?

ik ken verder het principe wat je gebruikt niet.
probeer anders dit eens:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$query
= "SELECT * FROM nieuws WHERE n_status = 'visible' ORDER BY n_id DESC";
$result = mysql_query($query);
if (
mysql_num_rows($db-&gt;resultaten) &lt;= 0) {
   
   &
lt;h2&gt;Geen resultaten&lt;/h2&gt;
   &
lt;p&gt;
      
Er zijn geen resultaten gevonden in de database
   
&lt;/p&gt;
   
php
} else {
while (
$nieuws = mysql_fetch_object($result)){ // loop hier }
?>
As a rule, I never touch anything more sophisticated and delicate than myself.
pi_33902425
Ik heb een vraag over mysql en database design. Ik heb al een paar keer een simpele website gebouwd waar ik de data gewoon uit een tabellteje kon halen maar volgens mij moet het deze keer anders.

Ik zal even uitleggen wat ik wil:
Een website met een CMS waarin de gebruiker data kan toevoegen. Het CMS moet heel simpel zijn en dus eigenlijk gewoon een formulier waar de tekst in staat, de gebruiker kan het aanpassen maar niks met de layout doen. Dmv van CSS wordt vervolgens de layout bepaalt. Alleen hebben we daarnaast een linkjes overzicht, een nieuws pagina en een rapporten overzicht.

De nieuwspagina is anders omdat die ook in RSS moet worden uitgelezen. Nou vraag me af hoe kan ik dit het beste aanpakken, welke database opbouw werkt het snelst en zorgt ervoor dat ik zo min mogelijk php code nodig heb.

En daarnaast, wat is het meest flexibel, als ik in de toekomst nog een bijzondere pagina wil toevoegen (nv fotooverzicht) welke manier van database opbouw is dan het makkelijkst voor mij.

In de database komen de volgende onderdelen:
Normale tekst -titel - tekts
Nieuws -titel-beschrijving-tekst-datum
Linkjes --URL- beschrijving
Rapporten -naam-nummer -datum-URL (link naar het rapport)

En voor de website heb ik nog -menu nodig

Ik hoop dat iemand mij kan helpen hoe ik dit het beste kan oplossen!
Alvast bedankt
  dinsdag 10 januari 2006 @ 14:37:21 #132
65471 SkaterSam
Lurking Galore
pi_33903161
quote:
Op dinsdag 10 januari 2006 14:12 schreef Desdinova het volgende:
je wijst geen nieuwe data toe aan $db in de while loop?
Ja, wel dus , ik gebruik een tweede $db->query in de while loop om de categorie te achterhalen, nu heb ik dat verandert in een normale query ($ret = mysql_query($query)), en dan doet ie het wel?

Ik kan dus niet nog een keer $db->query doen in de while loop?
Let's make life easy
Typo's are the demon spawn from hell !
pi_33903425
nee
want dan raaktie je while-gegevens kwijt ofzo.

[edit]
k snap waarom

ff met mijn code, zodat ik t zelf snap.

1
2
3
4
5
6
7
8
<?php
$query
= "SELECT * FROM a WHERE b = 'c'";
$result = mysql_query($query);

while (
$row = mysql_query($result)){
//loop
}
?>


als je de query wijzigt in de loop, wijzigt $result ook. en die roeptie op bij de while.
en daar gaat het dus fout

[ Bericht 87% gewijzigd door Desdinova op 10-01-2006 14:55:24 ]
As a rule, I never touch anything more sophisticated and delicate than myself.
  woensdag 11 januari 2006 @ 13:28:21 #134
64276 9christensen
Grolsch bier is gezond
pi_33936214
Ik zoek een makkelijk phpscript waarmee ik een gastenboek kan maken. In dit gastenboek wil ik dat je berichten kunt quoten. Ik heb al op veel scriptsites gezocht, maar ben nog niet iets tegen gekomen.
Het is het eindpunt van de trein, bijna geen mens hoeft er te zijn, bijna geen hond gaat zover mee:
[b]Enschede![/b]
pi_33936588
quote:
Op woensdag 11 januari 2006 13:28 schreef 9christensen het volgende:
Ik zoek een makkelijk phpscript waarmee ik een gastenboek kan maken. In dit gastenboek wil ik dat je berichten kunt quoten. Ik heb al op veel scriptsites gezocht, maar ben nog niet iets tegen gekomen.
Zoek een gastenboek op welke met Mysql werkt,

voeg er onder elke berichtje een quote-knopje toe waarin je de bericht ID naar het formulier doorspeelt

Zoek vervolgens het bericht op in de database aan de hand van dat IDnummer, zet er quote-tags omheen en voeg een preg_expr toe welke van [quote] > <blockquote> maakt oid.
  woensdag 11 januari 2006 @ 14:08:23 #136
64276 9christensen
Grolsch bier is gezond
pi_33937314
quote:
Op woensdag 11 januari 2006 13:40 schreef the_disheaver het volgende:

[..]

Zoek een gastenboek op welke met Mysql werkt,

voeg er onder elke berichtje een quote-knopje toe waarin je de bericht ID naar het formulier doorspeelt

Zoek vervolgens het bericht op in de database aan de hand van dat IDnummer, zet er quote-tags omheen en voeg een preg_expr toe welke van [quote] > <blockquote> maakt oid.
mja, zo slim ben ik nog niet met php.

ik zoek eigenlijk naar een scriptje dat alles al doet.
Het is het eindpunt van de trein, bijna geen mens hoeft er te zijn, bijna geen hond gaat zover mee:
[b]Enschede![/b]
  woensdag 11 januari 2006 @ 14:51:48 #137
111578 tsjsieb
but not cheap...
pi_33938728
quote:
Op woensdag 11 januari 2006 14:08 schreef 9christensen het volgende:

[..]

mja, zo slim ben ik nog niet met php.

ik zoek eigenlijk naar een scriptje dat alles al doet.
Misschien kun je naar smartisoft phpBook kijken, deze heb ik vroeger ooit eens gebruikt.
Ik geloof dat ie toen alleen niet helemaal perfect met firefox werkte, maar dat zou je zelf even moeten proberen.
pi_33939196
hoe installeer ik die verpauperde PEAR-packages, via de CLI lukt het niet.

gebruik trouwens voor het gemak PHPdev met php 4.3 erbij, bij wie is het hiermee wel gelukt? Bij het openen van mijn php-cli.exe en php.exe krijg ik een 'php4ts.dll niet gevonden' fout

Man ik ben 90% van de tijd kwijt met dingen instellen en aanpassen van de localhostinstellingen.


1
2
3
4
5
6
7
8
9
10
11
12
Error


Sorry! PEAR_Frontend_Web is not yet compatible

with PEAR 1.4.x. A new version will be available soon.

Until then, you may install the CLI version of PEAR,

or grab the CVS version of PEAR_Frontend_Web via

anonymous CVS (WARNING: experienced developers only)


Wat moet ik hiermee, zoals ik dus al zei ben ik er al een tijdje mee bezig geweest.. maar ben ik helemaal niet van dat instellinggepriegel en meer van het scriptwerk zelf.
Wie helpt me uit de brand of heeft wat tips?

[ Bericht 32% gewijzigd door Fatality op 11-01-2006 19:42:23 ]
  woensdag 11 januari 2006 @ 19:29:29 #139
37634 wobbel
Da WoBBeL King
pi_33947814
Ik heb een DB met allerlei downloads met als titel 3532526_hierbestands_datum_dag.doc

Hoe zorg ik ervoor dat ALLEEN alles voor de eerste _ wordt verwijderd? In dit geval dus alle nummers voor de eerste _.

alle overige _ enzo mogen wel blijven staan
pi_33949196
Iets dergelijks? Niet getest.

1$titel = substr( $titel, strpos( $titel, "_" ) + 1 );
pi_33949709
quote:
Op woensdag 11 januari 2006 19:58 schreef Nevermind het volgende:
Iets dergelijks? Niet getest.
[ code verwijderd ]
offe:
1
2
array = explode ("_", $bestandsnaam");
$nieuw_bestandnaam = $array[1]."_".$array[2]."_".$array[3];

Moet wel werken, maar niet getest. De vorige lijkt me netter.
pi_33949799
quote:
Op woensdag 11 januari 2006 20:10 schreef the_disheaver het volgende:

[..]

offe:
[ code verwijderd ]

Moet wel werken, maar niet getest. De vorige lijkt me netter.
Dan zou ik wel iets als dit doen, iets flexibeler;

1
2
3
$array = explode( "_", $titel );
unset( $array[0] );
$titel = implode( "_", $array );


Maar goed, waarom moeilijk doen als het makkelijk kan
  woensdag 11 januari 2006 @ 21:17:35 #143
51748 H4ze
wait...what?
pi_33952101
SQL vraagje...

Kan het kloppen dat het niet mogelijk is om in 1 DELETE statement gegevens uit meerdere tabellen te verwijderen?
*BURP*
pi_33953997
Check the manual het is dus wel degelijk mogelijk om met één DELETE-statement rows uit meerdere tabellen te verwijderen.
pi_33958409
Ik probeer een XML bestand te parsen, wat opzich goed gaat, maar ik val over een paar dingen.

Ik moet oa informatie hebben die tussen <description>-tags staat. Dit lukt, maar als er tussen de start en eindtag witregels worden gebruikt, pakt de parser het maar tot de witregel.

Dus
1
2
3
<description>BlaBla

123!!</description>

Levert als output alleen 'BlaBla'. Een nl2br(); lost hierbij niks op,

Daarnaast is er ook een probleem als er een < of >-teken wordt gebruikt (bijvoorbeeld als er een link is opgenomen in de description, of een <b>-tag). De parser stopt dan ook op dit punt. De tags staan er trouwens niet hard in, maar in hun html-entity-waarde, dus &l_t en >. Dit geldt ook voor tekens als apostrof (') enzo, maar die kan ik er uitvissen met een ereg_replace:
1$data = ereg_replace("&apo_s","'",$data);

Doe ik dit echter bij de < en >-tekens, krijg ik deze error:
quote:
XML error: not well-formed at line xxx
Die line xxx is overigens de eerste lijn in de xml-file waar zo'n <-teken staat.

Als laatste puntje heb ik een probleem om de inhoud van een tag met een namespace-verwijzing daarin te pakken te krijgen. In dit geval de tag <lj:mood>. Ik begreep uit documentatie dat die namespace slechts ter identificatie dient en je gewoon op de tag zonder de namespace kan zoeken. Dus in dit geval <mood>. Helaas blijft mijn variabele waarin de inhoud van de tag zou moeten staan dan leeg .

Iemand suggesties? Ik blijf zelf ook dingen proberen natuurlijk, als ik antwoorden heb post ik ze hier .

In de voorbeelden hier heb ik die html-entities wat aangepast, want anders worden ze als teken neergezet door Replikk. In mijn echte code staan ze goed, dus zonder underscore en met punt-komma.

De code van mijn parser.
Die Welt ist alles was der Fall ist.
pi_33959595
quote:
Op woensdag 11 januari 2006 15:05 schreef Fatality het volgende:
hoe installeer ik die verpauperde PEAR-packages, via de CLI lukt het niet.

gebruik trouwens voor het gemak PHPdev met php 4.3 erbij, bij wie is het hiermee wel gelukt? Bij het openen van mijn php-cli.exe en php.exe krijg ik een 'php4ts.dll niet gevonden' fout

Man ik ben 90% van de tijd kwijt met dingen instellen en aanpassen van de localhostinstellingen.
[ code verwijderd ]

Wat moet ik hiermee, zoals ik dus al zei ben ik er al een tijdje mee bezig geweest.. maar ben ik helemaal niet van dat instellinggepriegel en meer van het scriptwerk zelf.
Wie helpt me uit de brand of heeft wat tips?
ok klaar. heb het gefixt en het loopt.

Weet iemand een online digitale dictionary ofzo? Ik volg soms de Engelse digiterminologie niet volledig.
pi_33960207
freetranslation.com?
  donderdag 12 januari 2006 @ 00:19:10 #148
32768 DionysuZ
Respect my authority!
pi_33960782
babelfish.altavista.com
□ 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
  FOK!-Schrikkelbaas donderdag 12 januari 2006 @ 16:46:27 #149
1972 Swetsenegger
Egocentrische Narcist
pi_33978661
Even een situatie schtes.

Ik heb een aantal zinnen in een exel sheet
Deze exel sheet wordt in 9 talen vertaald

Vervolgens moeten deze zinnen in een txtfile komen waarbij de newline vervangen wordt door een ~ en alle html entities moeten vervangen worden door hun daadwerkelijk entitie (& uuml;, etc)

Ok, daar heb ik een prachtig scriptje voor geschreven. Zodra ik mijn vertaalde exel sheetje heb binnen gekregen, plak ik de kolom in een txtfile. Upload de txtfile mijn scriptje in, en hij komt er geconverteerd uitrollen.

Maar...... Helaas helaas zijn sommige teksten javascript alerts en confirms. En daar moeten entities vervangen worden door unicode (\u00f9, etc).

Nu wil ik mijn script dus aanpassen dat ik de txtfile kan uploaden (zoals ik nu al doe) en een aantal nummers kan intikken van de zinnen welke unicode moeten worden ipv html entities. Vervolgens moet ik DIE specifieke nummers in mijn file array doorzoeken op html entities zoals ø en vervangen door unicode.

Lange inleiding, maar het gaat nu om dit laatste. Ik heb een array met nummers, bv 10, 11, 13, 18.
Die nummers staan gelijk aan de regels in mijn txt file voordat de newlines zijn vervangen door ~
Die regels moet ik dan stuk voor stuk gaan doorzoeken op ß, à, á en vervangen door hun unicode equivalent \u00DF, \u00E0, \u00E1.

Hoe ga ik dat laatste aanpakken? Een array waarbij de key de entity is en de value de unicode. En indien de key voorkomt in de array welke ik doorzoek, deze swappen met de value?

Het huidige script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<html>
<head>
<title>Linebreak to tilde convertor</title>
<script type="text/javascript">
function getPath() {
   document.myForm.path.value = document.myForm.file.value;
}
</script>
<?php
if(isset($_POST['submit'])){
    $path=stripslashes($_POST['path']);

$document=file("{$_FILES['file']['tmp_name']}");
foreach($document as $lines){
  $lines=str_replace("\n",'~',$lines);
}
$document=implode("~",$document);
$document=str_replace("\r\n",'',$document);
$document=htmlentities($document);

//referer schrijven naar bestand

$fp=fopen("$path",'w+');

      fwrite($fp,"$document");
      fclose($fp);
}

?>
</head>
<body>
<?
if(!empty($document)){
echo "$document";
}else{
?>
LET OP: De te converteren files moeten op de desktop staan ivm rechten
<form name="myForm" onsubmit="getPath()" enctype="multipart/form-data" action="convertor.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" /></p>
<input type="hidden" name="path" value="">
<p>Textfile: <input name="file" type="file" /></p>
<input type="submit" name="submit" value="convert" />
<?}?>
</form>
</body>
</html>
pi_33979464
Je voegt een textveld toe aan je form waarin je in 1,2,3,4-format de regels aangeeft, vervolgens vervang je je php stuk:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$unicode_lines = explode(',', $_POST['unicodelines']);

$output = '';
foreach($document as $line_number => $line){
  if(in_array($line_number + 1, $unicode_lines)) {
    $output .= unicode_functie(trim($line)).'~';
  } else {
    $output .= htmlentities(trim($line)).'~';
 }
}

$f = fopen($path,'w');
fwrite($f, $output);
fclose($f);


Zoiets ongeveer?
  FOK!-Schrikkelbaas donderdag 12 januari 2006 @ 17:14:58 #151
1972 Swetsenegger
Egocentrische Narcist
pi_33979764
quote:
Op donderdag 12 januari 2006 17:06 schreef Ro�a� het volgende:
Je voegt een textveld toe aan je form waarin je in 1,2,3,4-format de regels aangeeft, vervolgens vervang je je php stuk:
[ code verwijderd ]

Zoiets ongeveer?
De vraag was meer hoe ik die unicode_functie schrijf
Overigens heb je hier ook niet implode toch?
pi_33980050
Moet je even bij http://nl2.php.net/ord, staat in de comments redelijk wat over uniord.
  FOK!-Schrikkelbaas donderdag 12 januari 2006 @ 17:28:53 #153
1972 Swetsenegger
Egocentrische Narcist
pi_33980304
quote:
Op donderdag 12 januari 2006 17:22 schreef Ro�a� het volgende:
Moet je even bij http://nl2.php.net/ord, staat in de comments redelijk wat over uniord.
Ik zie er inderdaad wel het een en ander tussen staan.
Bedankt!
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')