Lixo
Lixo

Reputation: 101

I am working on a tutorial with Mailgun in my localhost. Send gives me an error

Being trying to use Mailgun on a tutorial. I get this error and I am stuck…

Error

Fatal error Uncaught exception: ‘Http\Discovery\Exception\NotFoundException’

Message: ‘No PSR-17 url factory found. Install a package from this list: https://packagist.org/providers/psr/http-factory-implementation

composer.json

{
    "require": {
        "twig/twig": "~2.0",
        "mailgun/mailgun-php": "^3.0",
        "php-http/guzzle6-adapter": "^2.0",
        "php-http/message": "^1.8"
    },
    "autoload": {
        "psr-4": {
             "App\\": "App/"
        }
    }
}

Call to Mail Class

Mail::send('[email protected]','Test','This is a test', '<h1>This is a test</h1>');

Mail Class

namespace App;
use App\Config;
use Mailgun\Mailgun;

/**
 * Mail
 *
 * PHP version 7.0
 */
class Mail
{

/**
 * Send a message
 *
 * @param string $to Recipient
 * @param string $subject Subject
 * @param string $text Text-only content of the message
 * @param string $html HTML content of the message
 *
 * @return mixed
 */
public static function send($to, $subject, $text, $html)
{
    //$myApi = "8376be5527cfdef0553e922311897911-bbbc8336-db54a219";
    $domain = "https://app.mailgun.com/app/sending/domains/sandboxa38feaf00c804083b97e97be976b62d5.mailgun.org";

    # First, instantiate the SDK with your API credentials
    $mg = Mailgun::create('8376be5527cfdef0553e922311897911-bbbc8336-db54a219');

    # Now, compose and send your message.
    # $mg->messages()->send($domain, $params);
    $mg->messages()->send($domain, [
        'from'    => 'Excited User <mailgun@$domain>',
        'to'      => $to,
        'subject' => $subject,
        'text'    => $text
    ]);
}

}

After

composer require mailgun/mailgun-php kriswallsmith/buzz nyholm/psr7 Using version ^3.0 for mailgun/mailgun-php Using version ^1.0 for kriswallsmith/buzz Using version ^1.2 for nyholm/psr7 ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages.

Problem 1 - Conclusion: don't install kriswallsmith/buzz 1.0.1 - Conclusion: remove symfony/options-resolver v5.0.2 - Installation request for kriswallsmith/buzz ^1.0 -> satisfiable by kriswallsmith/buzz[1.0.0, 1.0.1]. - Conclusion: don't install symfony/options-resolver v5.0.2 - kriswallsmith/buzz 1.0.0 requires symfony/options-resolver ^3.4 || ^4.0 -> satisfiable by symfony/options-resolver[v3.4.0, v3.4.1, v3.4.10, v3.4.11, v3.4.12, v3.4.13, v3.4.14, v3.4.15, v3.4.16, v3.4.17, v3.4.18, v3.4.19, v3.4.2, v3.4.20, v3.4.21, v3.4.22, v3.4.23, v3.4.24, v3.4.25, v3.4.26, v3.4.27, v3.4.28, v3.4.29, v3.4.3, v3.4.30, v3.4.31, v3.4.32, v3.4.33, v3.4.34, v3.4.35, v3.4.36, v3.4.4, v3.4.5, v3.4.6, v3.4.7, v3.4.8, v3.4.9, v4.0.0, v4.0.1, v4.0.10, v4.0.11, v4.0.12, v4.0.13, v4.0.14, v4.0.15, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9, v4.2.0, v4.2.1, v4.2.10, v4.2.11, v4.2.12, v4.2.2, v4.2.3, v4.2.4, v4.2.5, v4.2.6, v4.2.7, v4.2.8, v4.2.9, v4.3.0, v4.3.1, v4.3.2, v4.3.3, v4.3.4, v4.3.5, v4.3.6, v4.3.7, v4.3.8, v4.3.9, v4.4.0, v4.4.1, v4.4.2]. - Can only install one of: symfony/options-resolver[v3.4.0, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.1, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.10, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.11, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.12, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.13, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.14, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.15, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.16, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.17, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.18, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.19, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.2, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.20, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.21, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.22, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.23, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.24, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.25, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.26, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.27, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.28, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.29, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.3, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.30, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.31, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.32, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.33, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.34, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.35, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.36, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.4, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.5, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.6, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.7, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.8, v5.0.2]. - Can only install one of: symfony/options-resolver[v3.4.9, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.0, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.1, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.10, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.11, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.12, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.13, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.14, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.15, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.2, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.3, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.4, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.5, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.6, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.7, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.8, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.0.9, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.0, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.1, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.10, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.11, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.12, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.2, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.3, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.4, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.5, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.6, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.7, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.8, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.1.9, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.0, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.1, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.10, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.11, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.12, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.2, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.3, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.4, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.5, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.6, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.7, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.8, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.2.9, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.0, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.1, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.2, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.3, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.4, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.5, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.6, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.7, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.8, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.3.9, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.4.0, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.4.1, v5.0.2]. - Can only install one of: symfony/options-resolver[v4.4.2, v5.0.2]. - Installation request for symfony/options-resolver (locked at v5.0.2) -> satisfiable by symfony/options-resolver[v5.0.2].

Installation failed, reverting ./composer.json to its original content.

Upvotes: 1

Views: 1229

Answers (1)

ttrasn
ttrasn

Reputation: 4851

From installation document

The Mailgun API Client is not hard coupled to Guzzle, Buzz or any other library that sends HTTP messages. Instead, it uses the PSR-18 client abstraction. This will give you the flexibility to choose what PSR-7 implementation and HTTP client you want to use.

Try this command on composer:

composer require mailgun/mailgun-php kriswallsmith/buzz nyholm/psr7

After you updating your question.in log says symfony/options-resolver already have an older version installed. you must pick one of them. (v3.4.1 or v5.0.2)

I think if you update it. it will be fix :

composer update symfony/options-resolver

Upvotes: 2

Related Questions