Fatal error na toepassen intval & mres

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior, Medior and Junior SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 12696 Introductie Our client is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. Wat verwachten we van jou? SAP Certified Application Associate - SAP HANA Cloud Modeling (training and/or certification) Bachelor degree or higher Excellent understanding of SAP HANA (2.0 / Cloud), Data Modelling and writing

Bekijk vacature »

Pagina: « vorige 1 2 3 volgende »

Marco PHPJunky

Marco PHPJunky

17/11/2012 16:04:19
Quote Anchor link
oke dan,
Het is niet echt een fout het is een notice (een waarschuwing)...
als je de:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
  error_reporting(E_ALL);
    ini_set('display_errors', 1);
?>

weg haalt is die ook weg maar het is niet netjes...
Maar laat hem voor nu nog maar even staan en probeer het eens zo:

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
    
    echo '<pre>'.print_r($_GET, true).'<pre>';
    // dit stukje weg halen of uit zetten als je hem online/'live' zet...
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
 
 // Get the needed data
 if( isset($_GET['id']) && isset($_GET['serial']) ):

    if ( is_numeric($_GET['id']) && !is_null($_GET['id']) && (int)$_GET['id'] && !empty($_GET['id']) && !is_null($_GET['serial']) && !empty($_GET['serial']) && is_string($_GET['serial']) ):
            // contoleer de serial...
            $serial_data = $mysqli->real_escape_string($_GET['serial']);

            $check_result = $mysqli->query('select id, serial from companion where id = '. intval($_GET['id']) .' and serial = '.$serial_data.' limit 1');
                if( $check_result ):
                     // Cycle through results
                    while ( $row = $check_result->fetch_object() ):
                        echo '<pre>';
                        echo var_dump($row);
                        echo '</pre>';
                    endwhile;
                endif;


            echo '<pre>';
            echo var_dump($check_result);
            echo '</pre>';          

            if( $check_result ):

                $sql = 'update companion set active = 1 where id = '.(int)$_GET['id'].' limit 1';
                $result = $mysqli->query($sql);

                if ( $mysqli->affected_rows() == 1 ):
                
                    echo 'Uw account is geactiveerd';
                else: // else als er niks is bijgewerkt in de database...
                    echo 'Er ging is verkeerd tijdens het updata van de database, probeer het opnieuw a.u.b';
                endif;

            else: // else als er iets verkeerds is met de activatie serial...
                 echo 'Verkeerde activatie gegevens, controleer de url in uw activatie mail.';
            endif;

    else: // else if het id en/of de serial zijn niet correct...
        echo 'Een van de mee gegeven data is incorrect, controlleer uw invoer!.';
    endif;

 else: // else als er geen id of serial gevonden word...
     echo 'Er is iets niet goed gegaan neem contact op met de webmaster';
 endif;


?>
Gewijzigd op 17/11/2012 17:54:07 door Marco PHPJunky
 
PHP hulp

PHP hulp

22/11/2024 15:11:02
 
Peter Overdam

Peter Overdam

17/11/2012 16:16:06
Quote Anchor link
@Marco
Krijg dit keer wel een echte error

Fatal error: Call to a member function execute() on a non-object in /var/www/vhosts/7/125190/webspace/httpdocs/mijndomein.nl/modules/account/activate-account.php on line 15
Gewijzigd op 17/11/2012 18:06:03 door Peter Overdam
 
Marco PHPJunky

Marco PHPJunky

17/11/2012 16:24:23
Quote Anchor link
heb me post ge-update...

Weer Ge-update
Gewijzigd op 17/11/2012 16:41:37 door Marco PHPJunky
 
Peter Overdam

Peter Overdam

17/11/2012 16:30:46
Quote Anchor link
Krijg nog steeds een Fatal Error

Fatal error: Call to a member function execute() on a non-object in /var/www/vhosts/7/125190/webspace/httpdocs/mijndomein.nl/modules/account/activate-account.php on line 15
Gewijzigd op 17/11/2012 18:05:48 door Peter Overdam
 
Marco PHPJunky

Marco PHPJunky

17/11/2012 16:41:07
Quote Anchor link
Weer Ge-update...
 
Peter Overdam

Peter Overdam

17/11/2012 16:43:01
Quote Anchor link
Krijg nu een waarschuwing en een error

Notice: Undefined variable: db in /var/www/vhosts/7/125190/webspace/httpdocs/mijdomein.nl/modules/account/activate-account.php on line 15

Fatal error: Call to a member function query() on a non-object in /var/www/vhosts/7/125190/webspace/httpdocs/mijndomein.nl/modules/account/activate-account.php on line 15
Gewijzigd op 17/11/2012 18:05:31 door Peter Overdam
 
Marco PHPJunky

Marco PHPJunky

17/11/2012 16:57:20
Quote Anchor link
oeps sorry mijn fout had nog 1 ding niet goed staan nu wel :P
 
Peter Overdam

Peter Overdam

17/11/2012 16:59:29
Quote Anchor link
@Marco
Krijg nu geen fout meldingen meer maar wel de volgende regel.

Verkeerde activatie gegevens, controleer de url in uw activatie mail.
 
Marco PHPJunky

Marco PHPJunky

17/11/2012 17:07:22
Quote Anchor link
mmm staat er wel wat in de database waarmee je test ?
is de url die je gebruikt wel correct ?

Want hij kan niks vinden in de database...
 
Peter Overdam

Peter Overdam

17/11/2012 17:20:10
Quote Anchor link
@Marco
Er staat zeker wat in de DB heb voor de zekerheid een nieuw accountje aangemaakt om te testen.

--
-- Tabel structuur voor tabel `companion`
--

CREATE TABLE IF NOT EXISTS `companion` (
`id` int(11) NOT NULL auto_increment,
`active` int(1) NOT NULL,
`ipadres` varchar(100) NOT NULL,
`password` varchar(2000) NOT NULL,
`serial` varchar(255) NOT NULL,
`gender` varchar(10) NOT NULL,
`stagename` varchar(100) NOT NULL,
`dateofbirth` varchar(100) NOT NULL,
`phonenumber` varchar(100) NOT NULL,
`emailadress` varchar(100) NOT NULL,
`website` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=91 ;

--
-- Gegevens worden uitgevoerd voor tabel `companion`
--

INSERT INTO `companion` (`id`, `active`, `ipadres`, `password`, `serial`, `gender`, `stagename`, `dateofbirth`, `phonenumber`, `emailadress`, `website`) VALUES
(90, 0, '83.84.1.245', '5886ecc83e86994b2ac6bb54d64b7fbe', 'I7GcDnFiHEMhJd043OAgBP6akpNClKmeoL9f1jb285', 'Dhr', 'Peter Overdam', '10 December 1979', '09000538', '[email protected]', '');
 
Marco PHPJunky

Marco PHPJunky

17/11/2012 17:34:37
Quote Anchor link
Dus wat zegt hij met het nieuwe account....
welke link staat er in de mail en welke code...

welk resultaat krijg je uit je array die je had als je op de pagina komt vanuit de email...

krijg je nog overige meldingen ?
 
Peter Overdam

Peter Overdam

17/11/2012 17:41:23
Quote Anchor link
@Marco
Bij het maken van een account geeft hij netjes aan dat hij is aangemaakt in de DB wordt het account ook correct ingevoerd in mijn mail krijg ik de volgende url.

http://www.mijndomein.nl/account-activeren/90/I7GcDnFiHEMhJd043OAgBP6akpNClKmeoL9f1jb285

En de pagina zelf geeft de volgende gegevens door:

Array
(
[page] => account-activeren
[id] => 90
[serial] => I7GcDnFiHEMhJd043OAgBP6akpNClKmeoL9f1jb285
)
Verkeerde activatie gegevens, controleer de url in uw activatie mail.

Voor de rest krijg ik geen overige meldingen

Greetz
Peter
 
Marco PHPJunky

Marco PHPJunky

17/11/2012 17:55:15
Quote Anchor link
Oke nou dan moeten we dat nog even oplossen en daarna stuur ik je even een pm...

Maar ik heb de code hierboven weer aangepast want we moeten even kijken of die query goed gaat...
 
Peter Overdam

Peter Overdam

17/11/2012 18:05:02
Quote Anchor link
Oke dan heb de laatste versie van het script nu geupload en getest en krijg het volgende terug.

Array
(
[page] => account-activeren
[id] => 90
[serial] => I7GcDnFiHEMhJd043OAgBP6akpNClKmeoL9f1jb285
)
bool(false)
Verkeerde activatie gegevens, controleer de url in uw activatie mail.
 
Bart V B

Bart V B

17/11/2012 18:37:05
Quote Anchor link
Quote:
@Bart v B,

Heb je ooit is in een framework/classes gekeken ?!? (denk het niet, en anders niet echt goed waarscheinlijk)

want daar worden/kunnen ook functies door andere functies en in functies aangeroepen worden en gebruikt worden.
En Classes nemen andere classes hun eigenschappen over en functies.

En nee dat is niet 1 spijker met 2 hamers slaan!

Ehm.., even denken...
Jij begint even hier over frameworks/classes en doet een aanname dat ik daar waarschijnlijk niets vanaf weet.
Als we het dan toch over classes/frameworks hebben, dan kan ik je vertellen dat ik daar redelijk in thuis ben.
De function zoals de TS het hier in dit topic heeft staan is totaal irrelevant want zoals ik het nu zie staat het niet in een framework. En als dat al zo is, dan is het nog een nutteloze.
We hebben het over een _escape_string() funtction die niet eens gebruikt moet worden in zijn probleem, laat staan dat deze dan zoals bedoeld gebruikt word.
Een class is uitbreidbaar, niet bedoeld voor een ding.

In dit geval gaat het over een funtction escapen dan moet het dus een systeem zijn die dus gebruikt kan worden voor meerdere types b.v. mysql/postgress/mssql/sqllite e.d..
In het geval van de TS is het alleen een mysql dus een totale nutteloze function en kan hij het beter doen rechtstreeks in de query.
Dus zoals hij het nu heeft staan is denk ik beter dan wat het was.
Dat hij van mij nog niet helemaal klopt is true, had even niet verder gekeken hoe het verder geïmplementeerd moest worden, maar dacht dat ik al voldoende hints had gegeven om hem verder te helpen.
Helaas had ik even geen tijd meer om hem verder te helpen. Dus vandaar dat het lijkt op een wilde gok. ;)
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

17/11/2012 18:37:26
Quote Anchor link
Heb je het database object wel aangemaakt? i.e.:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$mysqli
= new mysqli('localhost', 'iemandandersdanderoot', 'w8w00rd', 'dbase5');
?>
 
Peter Overdam

Peter Overdam

17/11/2012 18:41:54
Quote Anchor link
Database object is aangemaakt je ziet het niet in het script maar hij wordt wel geinclude in de website.
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

17/11/2012 18:57:23
Quote Anchor link
Ah ik zie hem al (de php junkie is geen sql junkie), verander regel 15 in:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$check_result
= $mysqli->query("select id, serial from companion where id = ". intval($_GET['id']) . " and serial = '".$serial_data. "' limit 1");
?>
Gewijzigd op 17/11/2012 18:57:52 door Ger van Steenderen
 
Marco PHPJunky

Marco PHPJunky

17/11/2012 19:03:05
Quote Anchor link
mmm je krijgt geen resultaat terug uit de companions...

vervang:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
        $check_result
= $mysqli->query('select id, serial from companion where id = '. intval($_GET['id']) .' and serial = '.$serial_data.' limit 1');
                if( $check_result ):
                     // Cycle through results
                    while ( $row = $check_result->fetch_object() ):
                        echo '<pre>';
                        echo var_dump($row);
                        echo '</pre>';
                    endwhile;
                endif;

?>

eens met:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$check_result
= $mysqli->query('select count(*) from companion');
$row = $check_result->fetch_row();
echo '#: ', $row[0];
?>


om even te kijken of we er wat uit kunnen krijgen...
 
Peter Overdam

Peter Overdam

17/11/2012 19:06:18
Quote Anchor link
@Marco
Even ter controle script ziet er nu als volgt uit:

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
    
    echo '<pre>'.print_r($_GET, true).'<pre>';
    // dit stukje weg halen of uit zetten als je hem online/'live' zet...
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
 
 // Get the needed data
 if( isset($_GET['id']) && isset($_GET['serial']) ):

    if ( is_numeric($_GET['id']) && !is_null($_GET['id']) && (int)$_GET['id'] && !empty($_GET['id']) && !is_null($_GET['serial']) && !empty($_GET['serial']) && is_string($_GET['serial']) ):
            // contoleer de serial...
            $serial_data = $mysqli->real_escape_string($_GET['serial']);

            $check_result = $mysqli->query('select count(*) from companion');
            $row = $check_result->fetch_row();
            echo '#: ', $row[0];

            echo '<pre>';
            echo var_dump($check_result);
            echo '</pre>';          

            if( $check_result ):

                $sql = 'update companion set active = 1 where id = '.(int)$_GET['id'].' limit 1';
                $result = $mysqli->query($sql);

                if ( $mysqli->affected_rows() == 1 ):
                
                    echo 'Uw account is geactiveerd';
                else: // else als er niks is bijgewerkt in de database...
                    echo 'Er ging is verkeerd tijdens het updata van de database, probeer het opnieuw a.u.b';
                endif;

            else: // else als er iets verkeerds is met de activatie serial...
                 echo 'Verkeerde activatie gegevens, controleer de url in uw activatie mail.';
            endif;

    else: // else if het id en/of de serial zijn niet correct...
        echo 'Een van de mee gegeven data is incorrect, controlleer uw invoer!.';
    endif;

 else: // else als er geen id of serial gevonden word...
     echo 'Er is iets niet goed gegaan neem contact op met de webmaster';
 endif;


?>


En ik krijg de volgende gegevens eruit:

Array
(
[page] => account-activeren
[id] => 90
[serial] => I7GcDnFiHEMhJd043OAgBP6akpNClKmeoL9f1jb285
)
#: 2
object(mysqli_result)#2 (5) {
["current_field"]=>
int(0)
["field_count"]=>
int(1)
["lengths"]=>
array(1) {
[0]=>
int(1)
}
["num_rows"]=>
int(1)
["type"]=>
int(0)
}

Fatal error: Call to undefined method mysqli::affected_rows() in /var/www/vhosts/7/125190/webspace/httpdocs/mijndomein.nl/modules/account/activate-account.php on line 28
 

Pagina: « vorige 1 2 3 volgende »



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.