Aller au contenu

marcb

Hubmaster
  • Compteur de contenus

    130
  • Inscrit(e) le

  • Dernière visite

Messages postés par marcb

  1. Bonjour,

    Je te donne une piste :

    Il faudrait :

    - créer un répertoire temporaire avant l'appel à ton ftp, par exemple ./tmp/

    - récupérer le fichier myfic (via le script que tu as déjà écrit) dans ./tmp/ (la commande lcd peut t'aider)

    - après le 'bye', faire le test de l'existence du fichier myfic dans le répertoire courant :

    => s'il n'existe pas, tu le déplaces tout simplement de ./tmp/ vers ./

    => s'il existe, tu le déplaces en changeant son nom à ta guise

    - supprimer le répertoire ./tmp/

    Pour le code exact, ça dépend de ton shell.

    En bash :

    if test -f mon_fichier; then
    ... le fichier existe ...
    fi

    Amuse-toi bien !

    M

  2. Quelques remarques.

    Peux-tu tester la valeur de retour de tes mysql_query ainsi :

    $result = mysql_query('SELECT * WHERE id=12');
    if (!$result) {
    die('Requête invalide : ' . mysql_error());
    }

    Tu détecteras peut-être des erreurs de sql.

    Peux-tu aussi nous donner quelques lignes exemples de ta table ?

    De même, placer un

    error_reporting(E_ALL);

    en début de page n'est pas malsain pour vérifier tes développements.

    Après ça tu devrais pouvoir retourner ton code, ce sera plus simple de t'aider.

    M

  3. Avec le WIFI, rien ne t'assure que la borne avec laquelle tu dialogue appartient à un opérateur ou a n'importe qui... Il n'y a donc jamais rien de vraiment sécurisé. Donc, oui, en FTP, ton mot de passe passe en clair, en POP aussi...

    Je pense qu'on peut interpréter la question de Rémi d'une autre façon : en considérant la borne comme une borne

    de confiance, la connexion est-elle sécurisée : un utilisateur du wifi peut-il espionner la communication d'un autre ?

    M

  4. bonjour,

    Plusieurs questions dans ton post. Donc plusieurs réponses.

    Question 1 : faut-t-il envoyer manuellement le fichier à l'utilisateur à chaque fois que quelqu'un achète une partition ?

    Pas forcément, mais en tous cas ce n'est pas le rôle de paypal. Paypal se charge uniquement de facturer

    au client et de payer le vendeur. Après, c'est à toi de développer le mécanisme après la validation de l'achat.

    Lorsque paypal a validé un paiement, il peut appeler un script (php ou autre) sur le serveur web du vendeur. A toi

    de choisir ce que fait ce script (soit il prévient le vendeur qui traite la vente manuellement, soit il envoie directement

    le fichier au client).

    Question 2 : l'utilisateur est-il obligé de se créer un compte paypal pour régler le produit ?

    Non. Un utilisateur avec un compte gagne du temps s'il utilise souvent paypal, puisqu'à chaque achat (sauf le premier), il

    n'a qu'à donner son login/pwd/numéro de carte. Mais on peut très bien utiliser paypal occasionnellement et ne pas

    avoir de compte. Auquel cas, à chaque achat, il faut donner son nom, prénom, coordonnées, mail, numéro de carte, ...

    Question 3 : qu'est qui est le plus adapté pour ma situation (ajouter au panier , acheter maintenant ...) ?

    Ca dépend si on peut acheter plusieurs éléments en même temps sur le site...

    M

  5. Hélas, d'après ce qu'on peut trouver à propos de ce phénomène sur les différents forum, ça a l'air:

    - inexpliqué

    - aléatoire

    - sans explication de la part de Google

    - parfois résolu, parfois non

    - si résolu, sans explication ni justification

    Donc à part espérer que tout sera résolu demain, et se préparer à basculer sur une autre adresse mail,

    je ne vois pas d'autre solution. Ca ne donne pas envie de confier toute sa gestion mail à gmail...

    M

  6. Oui, oui je suis allé au bon endroit, je viens encore de le faire regarde le résultat :

    Effectivement il y a un message d'erreur, mais en même temps le compte semble correctement

    créé à la fin. Essaie de créer un compte buyer et d'effectuer ton test complet.

    M

  7. J'ai bien créé le compte dev à l'adresse que tu donnes, mais pour créer les deux comptes de test, j'ai un message d'erreur :

    [...]

    Alors là je ne vois pas... Tu es sûr d'être bien connecté ?

    Tu es bien sur cette page-là lorsque tu cliques sur 'Create test account' : https://developer.paypal.com/cgi-bin/devscr...ox-acct-session ?

    Sinon, au niveau des lignes 28 et 29 :

    $mc_gross = $_POST['mc_gross'];
    $invoice = $_POST['invoice'];

    Du coup, ce que j'ai fait, j'ai testé la partie d'actualisation de mon site en forçant ces deux valeurs et en mettant en commentaire tout le code nip. mon code de traitement fonctionne, maintenant, me manque la confirmation que la page nip va bien récupérer les bonnes infos

    Tu n'as pas assez de contrôles sur ton retour nip. Il faut tester l'ensemble des variables concernant la transaction si tu

    veux être certain que personne ne tente de falsifier un élément du paiement. Ca devrait donner ça :

    $invoice		  = $_POST['invoice'];
    $last_name = $_POST['last_name'];
    $item_number = $_POST['item_number'];
    $payment_status = $_POST['payment_status'];
    $payment_amount = $_POST['mc_gross'];
    $payment_currency = $_POST['mc_currency'];
    $txn_id = $_POST['txn_id'];
    $receiver_email = $_POST['receiver_email'];

    Marc

  8. Wacha,

    Pourquoi appeler ta banque toutes les 5 minutes ?

    Price Minister n'effectue les virements que les 1, 10 et 20 de chaque mois.

    Il te suffit donc de regrouper les virements.

    Tu peux aussi fonctionner par chèque dans un premier temps.

    M

  9. Dadou,

    Il faut d'abord créer un compte ici : https://developer.paypal.com/devscr?cmd=_signup-run

    Après, tu dois te créer au moins deux comptes de test (create test account) :

    - un compte type business pour simuler le vendeur

    - un compte type personal pour simuler un acheteur

    Configurer le script nip à partir des informations du compte 'business'.

    Se connecter à ton site, et simuler un achat avec le compte 'personnal'.

    En ce qui concerne les Notices de ta page nip.php, peux tu afficher les lignes 28 et 29 stp ?

    M

  10. A quel moment tu as une erreur ?

    Et quel message d'erreur ?

    Un test indispensable (mais absolument pas suffisant) consiste à appeler depuis un navigateur la page

    nip 'secrètement' appelée par paypal. En ajoutant

    error_reporting(E_ALL);

    au début de la page.

    M

  11. Quelle solution as-tu choisi ?

    Solution 1 : le bouton crypté

    Solution 2 : vérification manuelle des données avec les 3 fichiers php :

    - le script avec le bouton 'paiement immédiat'

    - la page de retour de l'internaute (un simple message)

    - la page nip appelée 'secrètement' par paypal

    M

  12. Et si tu remplaçais

    $db = new sql_db('localhost','root','','bdd', false);
    $manews = new arti();

    par

    $manews = new arti('localhost','root','','bdd', false);

    Et en ajoutant les différents paramètres dans le constructeur de arti.

    Ca devrait être mieux.

    Ton problème, c'est que tu instancies arti sans paramètre. Et accessoirement tu instancies

    sql_db mais tu n'utilises plus l'objet créé après.

    Je penses qu'avec un

    error_reporting(E_ALL);

    au début de ton script, tu aurais eu des warnings qui t'auraient mis sur la piste.

    M

  13. Tu devrais essayer la fonction file_get_contents().

    Il faut l'appeler en passant en paramètre le chemin absolu de ton script :

    $contenu = file_get_contents('http://www.domaine.com/chemin/script.php');

    et non :

    $contenu = file_get_contents('script.php');

    M

×
×
  • Créer...