PHP 5.5/5.6 naar 7.1 upgrade

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Johan de wit

johan de wit

14/02/2019 10:02:05
Quote Anchor link
MySQLi deed goed bij versie 5.5/5.6 maar vanaf 7.0/7.1 deed het raar met oproepen van quary.
Gewijzigd op 14/02/2019 11:46:26 door Johan de wit
 
PHP hulp

PHP hulp

29/03/2024 00:57:29
 
- Ariën  -
Beheerder

- Ariën -

14/02/2019 10:07:53
Quote Anchor link
Een SELECT-query is niet afhankelijk van de PHP-versie. Mogelijk speelt er want anders, zoals een functie waarmee je jouw query opbouwt, die niet goed compatible is.

Ik raad aan om je script sowieso voor PHP 7.2 te testen, en daarna voor PHP 7.3.
 
Johan de wit

johan de wit

14/02/2019 11:35:10
Quote Anchor link
Oke, dan zal ik weer naar query kijken en als ik het weer niet voor elkaar krijg om aan de praat te krijgen dan zal ik hier plaatsen zodat jullie mee kunnen kijken wat ik precies fout doe.
 
Thomas van den Heuvel

Thomas van den Heuvel

14/02/2019 17:07:09
Quote Anchor link
Waarschijnlijk gebruikte je nog mysql_* functies. Deze zijn echter deprecated (ondersteuning niet gegarandeerd) vanaf PHP 5.5.0 en verwijderd vanaf 7.0.0.

Dit stond al heel lang in de planning, dus als je het nieuws een beetje hebt gevolgd zou dit geen verrassing moeten zijn.
 
- Ariën  -
Beheerder

- Ariën -

14/02/2019 17:13:34
Quote Anchor link
Huh.... Stond er niet wat anders voor die edit? Ik meen dat je aangaf dat je in een aantal tussen-versies problemen had.
Gewijzigd op 14/02/2019 17:27:38 door - Ariën -
 
Johan de wit

johan de wit

14/02/2019 19:23:50
Quote Anchor link
@Thomas ik wist wel dat bepaalde dingen weg zouden gaan maar echt volgen deed ik niet en vooral de laatste tijden niet.

@Arën dat klopt ik wilde gewoon korter maken nadat je antwoord gaf dan dacht ik ook meteen dat topic met verkeerde zinnen was begonnen.

Er zijn twee Warnings:

Warning: mysqli_query() expects at least 2 parameters, 1 given

Warning: mysqli_error() expects exactly 1 parameter, 0 given

Fout komt door onderstaande stukje
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
    $Resultaat = mysqli_query($Query) or die("Fout door selecteren van Query ".$Query.". mysqli_error());
if($Resultaat){    
    $ResultaatS = array();
while($ResultS1 = mysqli_fetch_assoc($Resultaat))
    $ResultaatS[] = $ResultaatS1;
return
    $ResultaatS;
Gewijzigd op 14/02/2019 22:51:00 door johan de wit
 
- Ariën  -
Beheerder

- Ariën -

14/02/2019 23:06:00
Quote Anchor link
Als je kijkt op mysqli_query en mysqli_error, dan zie je dat er bij mysqli_query een link- en een query-parameter is. Jij hebt in jouw code enkel de query-parameter. De link-parameter verwijst naar je connectie. En de query is de uit te voeren SQL-query.

Bij mysqli_error() is er een connectie-parameter nodig.
Gewijzigd op 14/02/2019 23:07:09 door - Ariën -
 
Johan de wit

johan de wit

14/02/2019 23:23:58
Quote Anchor link
Morgen zal ik vervangen door connectie-parameter.
 
- Ariën  -
Beheerder

- Ariën -

14/02/2019 23:25:27
Quote Anchor link
Niet vervangen, maar toevoegen! ;-)
 
Johan de wit

johan de wit

16/02/2019 21:47:22
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
function db_connection($db_host,$db_naam,$db_gebruiker,$db_wachtwoord){
$conn = mysqli_connect("$db_host","$db_gebruiker","$db_wachtwoord","$db_naam") or die("Geen verbinding!");
mysqli_select_db($db_naam,$conn) or die (mysqli_connect_errno());


Met error reporting krijg ik dit te zien:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Warning: mysqli_select_db() expects parameter 1 to be mysqli


Wanneer regel 2 ($db_wachtwoord en $db_naam) omgedraaid is dan is er geen toegang.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Warning: mysqli_connect(): (28000/1045): Access denied for user


Als ik regel 3 ($db_naam en $conn) omdraai dan krijg ik dit te zien, maar dan wel alle tabelnamen onder error.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
mysqli_query() expects at least 2 parameters
mysqli_error() expects exactly 1 parameter
Gewijzigd op 16/02/2019 22:06:53 door johan de wit
 
Adoptive Solution

Adoptive Solution

16/02/2019 22:00:33
Quote Anchor link
Waarom in regel 3 de database (onjuist) selecteren als je dat in regel 2 al hebt gedaan?
Gewijzigd op 16/02/2019 22:02:08 door Adoptive Solution
 
Johan de wit

johan de wit

16/02/2019 22:08:13
Quote Anchor link
Dan krijg ik dit te zien.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Warning: mysqli_connect(): (28000/1045): Access denied for user
 
Adoptive Solution

Adoptive Solution

16/02/2019 22:23:15
Quote Anchor link
Probeer het eens volgens de handleiding.

http://php.net/manual/en/mysqli.select-db.php

De "procedural style" kan je direct toepassen.

Slechts de verbindings- en inloggegevens aanpassen en kijken of je 2 databases hebt waar je bij mag.
 
Johan de wit

johan de wit

16/02/2019 22:52:53
Quote Anchor link
Ik krijg netjes 2 meldingen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Default database is GEBRUIKERSNAAM. Default database is GEBRUIKERSNAAM.
 
Adoptive Solution

Adoptive Solution

16/02/2019 23:01:06
Quote Anchor link
Het werkt dus. Hoewel 'gebruikersnaam' voor een database een beetje 'odd' is.
 
Johan de wit

johan de wit

16/02/2019 23:11:07
Quote Anchor link
Inderdaad je voorbeeld werkt. GEBRUIKERSNAAM was echte naam dat heb ik vervangen voor dat ik had gepost.
 
- Ariën  -
Beheerder

- Ariën -

16/02/2019 23:15:12
Quote Anchor link
Lukt 'ie nu wel?
 
Johan de wit

johan de wit

17/02/2019 13:42:04
Quote Anchor link
Voorbeeld wat ik kreeg wel en als ik het overneem dan weer niet.
 
- Ariën  -
Beheerder

- Ariën -

17/02/2019 15:07:47
Quote Anchor link
Wat heb je nu aan code/script dan?
Gewijzigd op 17/02/2019 15:54:53 door - Ariën -
 
Johan de wit

johan de wit

17/02/2019 15:31:57
Quote Anchor link
Nog steeds het zelfde melding.
 
- Ariën  -
Beheerder

- Ariën -

17/02/2019 15:33:18
Quote Anchor link
Lees mijn vorige vraag nog eens?
 

Pagina: 1 2 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.