J'essaie de faire un centre de donation que j'utilise le code source de Totorialzine.
Jusqu'à présent, tout fonctionne bien pour moi, mais le seul problème pour lequel j'ai eu du mal à essayer de regarder pendant toute la journée et je ne peux pas comprendre exactement ce qui ne va pas avec le code.
voici ce que je reçois lorsque je soumets le commentaire sur la page lorsque mes visiteurs font un don.
Fatal error: Call to undefined function mb_strlen() in /home/yoursn0w/public_html/livetv/premium/thankyou.php on line 14
et voici le code dans le fichier php.
<?php
require "config.php";
require "connect.php";
if(isset($_POST['submitform']) && isset($_POST['txn_id']))
{
$_POST['nameField'] = esc($_POST['nameField']);
$_POST['websiteField'] = esc($_POST['websiteField']);
$_POST['messageField'] = esc($_POST['messageField']);
$error = array();
if(mb_strlen($_POST['nameField'],"utf-8")<2)
{
$error[] = 'Please fill in a valid name.';
}
if(mb_strlen($_POST['messageField'],"utf-8")<2)
{
$error[] = 'Please fill in a longer message.';
}
if(!validateURL($_POST['websiteField']))
{
$error[] = 'The URL you entered is invalid.';
}
$errorString = '';
if(count($error))
{
$errorString = join('<br />',$error);
}
else
{
mysql_query(" INSERT INTO dc_comments (transaction_id, name, url, message)
VALUES (
'".esc($_POST['txn_id'])."',
'".$_POST['nameField']."',
'".$_POST['websiteField']."',
'".$_POST['messageField']."'
)");
if(mysql_affected_rows($link)==1)
{
$messageString = '<a href="donate.php">You were added to our donor list! »</a>';
}
}
}
?>
J'ai ma base de données dans le phpMyAdmin téléchargé
voici où je suis les instructions de l'installation
http://tutorialzine.com/2010/05/donation-center-php-mysql-Paypal-api/
La fonction mb_strlen()
n'est pas activée par défaut en PHP. Veuillez lire le manuel pour les détails d'installation:
Pour résoudre ce problème, installez le paquet php7.0-mbstring:
Sudo apt install php7.0-mbstring
Sur Centos, RedHat, Fedora et d’autres systèmes yum-my, il est beaucoup plus simple que le manuel de PHP ne le suggère:
yum install php-mbstring
service httpd restart
Pour moi, la commande suivante a fait l'affaire
Sudo apt install php-mbstring
Pour moi, cela fonctionnait dans Ubuntu 14.04 et pour php5.6:
$ Sudo apt-get install php5.6-mbstring
Dans le cas où Google recherche cette erreur
Call to undefined function mb_ereg_match()
prend quelqu'un à ce fil. L'installation de php-mbstring le résout également.
Ubuntu 18.04.1, PHP 7.2.10
Sudo apt-get install php7.2-mbstring