database openen?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3

Thomas van den Heuvel

Thomas van den Heuvel

17/08/2017 01:08:22
Quote Anchor link
- waar hoort die true bij? bij parse_ini_file? of bij print_r?
- waar staat test.ini (wat is de locatie ten opzichte van de pagina van bovenstaande broncode)?
- hoe ziet test.ini er inhoudelijk uit?
- wat gebeurt er als je bovenaan je pagina het volgende toevoegt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'stdout');
?>

krijg je in dat geval foutmeldingen?
Gewijzigd op 17/08/2017 01:09:25 door Thomas van den Heuvel
 
PHP hulp

PHP hulp

08/11/2024 12:58:04
 
Frits van Leeuwen

Frits van Leeuwen

17/08/2017 15:58:01
Quote Anchor link
De true hoort bij parse_ini_file, want er staan secties in.

Het bestand staat daar waar hij eigenlijk niet moet staan volgens dit forum. Maar daar wil ik later aan werken. Het staat naast de index.php (In de root dus)

Na het toevoegen van die code, krijg ik deze melding:

Quote:
Fatal error: Call to undefined function  print_r() in /share/MD0_DATA/Web/test.nl/index.php on line 17


De inhoud van Test.ini is:

Quote:
[algemene instellingen]
programmanaam     = Test
versie         = 0.1.0.alpha.8

[connectie]
host         = localhost
user        = Test
pass         = Test
database     = db_test
Gewijzigd op 17/08/2017 16:10:37 door Frits van Leeuwen
 
- Ariën  -
Beheerder

- Ariën -

17/08/2017 16:08:11
Quote Anchor link
Maar wat zegt print_r() op je parse_ini_file?
Die zou normaal gesproken een associatieve array moeten geven. omdat je sections ook in je array wilt verwerken.
 
Frits van Leeuwen

Frits van Leeuwen

17/08/2017 16:13:57
Quote Anchor link
Sorry Ariën, ik was nog net niet helemaal klaar met het beantwoorden van de vraag van Thomas. Ik heb mijn antwoord nog even aangevuld.
Ik zou graag iets in beeld krijgen, waarmee ik de array kan bekijken. Dan weet ik daarna ook weer hoe ik weer verder moet.
Nu krijg ik dus met Thoms z'n aanvulling in de code de melding:

Quote:
Fatal error: Call to undefined function  print_r() in /share/MD0_DATA/Web/test.nl/index.php on line 17
Gewijzigd op 17/08/2017 16:16:25 door Frits van Leeuwen
 
- Ariën  -
Beheerder

- Ariën -

17/08/2017 16:17:14
Quote Anchor link
Huh?
print_r() is gewoon een bestaande functie in PHP 4,5,6 en 7.
 
Frits van Leeuwen

Frits van Leeuwen

17/08/2017 16:25:28
Quote Anchor link
precies, dus ik dacht ook,... als ik het zo doe, dan moet het lukken. Maar helaas...Dus ik snap het niet.
 
- Ariën  -
Beheerder

- Ariën -

17/08/2017 16:27:43
Quote Anchor link
Ik vind het ook vreemd. Of je hebt een vreemde PHP-versie waar iemand die functie er moedwillig uitgesloopt heeft. Want ik kan me niks anders indenken. Zelf op Google kom ik niks relevants tegen.

Misschien heeft de server het moeilijk met geheugen. Ik heb ooit een keer meegemaakt dat in een dergelijk geval ook vreemde foutmeldingen te zien waren.
Gewijzigd op 17/08/2017 16:29:09 door - Ariën -
 
Frits van Leeuwen

Frits van Leeuwen

17/08/2017 16:47:18
Quote Anchor link
De server is mijn eigen NAS.
 
- Ariën  -
Beheerder

- Ariën -

17/08/2017 16:54:26
Quote Anchor link
Welke PHP-versie heb je eigenlijk?

Ik zou ik eens kijken of een reboot helpt, en als dat niet helpt een klacht/vraag bij de helpdesk van de fabrikant van je NAS te openen. (welke heb je?)

print_r() is gewoon een vaste PHP-functie die er al heel lang in zit, en ik zie geen bepaalde voorwaarden waarom dit niet zou werken (soms zijn functies Windows/Linux only, om maar wat te noemen).
Is het niet een beter idee om een webserver op je PC te gebruiken? Denkend aan XAMPP? Dan heb je geen vreemde PHP-versie met rare fratsen... ;-)

Toevoeging op 17/08/2017 17:35:44:

Laat anders je code nog eens zien. Misschien heb je een vreemd spatie-achtig karakter voor je print_r staan.
Desnoods even die regel opnieuw typen.
 
Frits van Leeuwen

Frits van Leeuwen

17/08/2017 19:55:00
Quote Anchor link
PHP Version 5.6.30

Ik gebruik de NAS als PHP server, want dan kan mijn vrouw er ook bij op verschillende delen in het huis.

Code (php)
PHP script in nieuw venster Selecteer het PHP 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
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'stdout');
?>

<!DOCTYPE html>
<html>
    <head>
        <title>Basisbestand Test</title>
        <link rel="stylesheet" type="text/css" href="css/style.css">    
    </head>
    
    <body>
        <header>
        </header>
        <content>
            <?php
                $b
=print_r(parse_ini_file("test.ini",true),true);
                echo $b;
                //database openen
                echo $b['algemeen']['programmanaam'];
            ?>

        </content>
        <footer>
        </footer>
    </body>
</html>


- Ariën -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 17/08/2017 20:35:15 door - Ariën -
 
- Ariën  -
Beheerder

- Ariën -

17/08/2017 20:00:15
Quote Anchor link
Ik heb je bericht even tussen code-tags gezet. Dat is een stuk leesbaarder.
Zou je dat voortaan ook zelf willen doen?

Ik denk dat er toch iets mis is met de php-ondersteuning van de NAS, of je hebt een heel rare bug in PHP getriggerd. Laten we de code eens meer uit elkaar vlechten:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$parse
= parse_ini_file("test.ini",true);
echo "<pre>".print_r($parse,true)."</pre>";
?>

Geeft dit wel een mooie array-boom?
Gewijzigd op 17/08/2017 20:35:25 door - Ariën -
 
Frits van Leeuwen

Frits van Leeuwen

17/08/2017 20:38:41
Quote Anchor link
Geweldig Ariën,... <pre>..</pre> is de oplossing denk ik. Hiermee lukt het wel. Ik snap het nog niet helemaal, maar daar kom ik wel uit denk ik.
Dank voor je geduld en moeite. Wat mijbetreft kan kan deze topic gesloten worden.

Ik ben blij.
 
- Ariën  -
Beheerder

- Ariën -

17/08/2017 23:27:02
Quote Anchor link
Fijn dat het nu lijkt te werken. Ik heb geen idee waarom de functie niet herkend werd, maar misschien hielp het wel met het uitelkaar trekken van de code. Die <pre> is bedoeld om het als preformatted tekst te tonen, zodat alle enters en spaties netjes zichtbaar zijn.
 
Ben van Velzen

Ben van Velzen

18/08/2017 00:45:39
Quote Anchor link
Over die foutmelding: ik zie 2 spaties staan voor de functienaam ipv de gebruikelijke 1. Is hier mogelijk iets misgegaan bij een copy/paste?
 
Frits van Leeuwen

Frits van Leeuwen

18/08/2017 09:12:57
Quote Anchor link
Ik heb zelf wel de indruk dat er het een en ander mis gaat doordat ik code kopieer. Dit bleek vooral bij de laatste assistentie die ik hier in de groep kreeg. Door het copy/paste werkte het niet. maar na opnieuw intikken werkte het wel. Ik dacht dit eerder ook al gemerkt te hebben, maar was er toen nog niet zo zeker van.
Voortaan maar overtikken i.p.v. copy/past.
 
- Ariën  -
Beheerder

- Ariën -

18/08/2017 09:21:58
Quote Anchor link
Welke editor gebruik je eigenlijk?
 
- SanThe -

- SanThe -

18/08/2017 09:25:49
Quote Anchor link
Misschien helpt het als je eerst copy/paste in kladblok en het dan vanuit daar weer copy/paste naar je editor.
 
Frits van Leeuwen

Frits van Leeuwen

18/08/2017 09:31:54
Quote Anchor link
Notepad++
idd... copy/paste naar kladblok is ook een goed en snelle optie
Bedankt.

Maar vervuilen we hier niet het forum? Of is deze vraagstellingen en antwoorden van belang tot de vraag die ik stelde aan het begin?

Toch nog eens allemaal bedankt voor de lieve snelle assistentie.
 
Rob Doemaarwat

Rob Doemaarwat

18/08/2017 13:43:37
Quote Anchor link
Mocht je toch nog je config 'gewoon' als PHP op willen slaan (ivm alle genoemde voordelen), dan is dat niet zo heel moeilijk:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
file_put_contents('config.php',"<?php\n\nreturn " . var_export($config,true) . ';');


In je script doe je dan:


$config = require('config.php);
Gewijzigd op 18/08/2017 13:44:10 door Rob Doemaarwat
 

Pagina: « vorige 1 2 3



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.