προβλημα με php και email

PHP, ASP, Javascript, MySQL, WordPress, Joomla, phpBB, OpenSource λογισμικό.

προβλημα με php και email

Δημοσίευσηαπό typografika » 21.10.13, 7:02 pm

Κώδικας: Επιλογή όλων
<body>

<?php
   
   
   
   
   print "<strong>Αιτημα προσφοράς για...</strong>:<hr/>";

for($i = 0; $i < count($_POST["id"]); $i++){
   print $_POST["id"][$i]." - ".$_POST["name"][$i]." - ".$_POST["price"][$i]." - ".$_POST["quantity"][$i]."x<br/>";
}

print "<br/><strong>Total cost:</strong><hr/> ".$_POST["cost"];

?>

<?php

$msg="";
if(isset($_POST['submit']))
{


$name =    $_POST["name"];
$from_add =   perch_member_get('email').'!';






   $to_add = "test@evrelko.com";

   $subject = "order";
$message =   $_POST['$name \r\n'] ;
   
   
   $headers = "From: $from_add \r\n";
   $headers .= "Reply-To: $from_add \r\n";
   $headers .= "Return-Path: $from_add\r\n";
   $headers .= "X-Mailer: PHP \r\n";
   
   
   if(mail($to_add,$subject,$message,$headers))
   {
      $msg = "Mail sent OK";
   }
   else
   {
       $msg = "Error sending email!";
   }
}
?>



<?php echo $msg ?>
<p>
<form action='<?php echo htmlentities($_SERVER['PHP_SELF']); ?>' method='post'>
<input type='submit' name='submit' value='Submit'>
</form>
</p>


</body>



Οτι και να βάλω... δεδομένα μέσο email δεν παίρνω με τιποτα!!!!
τι πρέπει να γράψω στο $message = .....;
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό notis » 22.10.13, 7:58 am

Το
Κώδικας: Επιλογή όλων
$message =   $_POST['$name \r\n'] ;


πρέπει σίγουρα να γίνει

Κώδικας: Επιλογή όλων
$message =   $_POST['$name'].'\r\n' ;
Άβαταρ μέλους
notis
Master Admin
 
Posts: 3697
Εγγραφή: 23.02.04, 1:36 pm
Τοποθεσία: Corinth

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 22.10.13, 4:05 pm

Ευχαριστώ Νοτις, αλλά στο email ερχεται μόνο το λεκτικό \r\n ή ότι αλλο πληκτρολογίσω μέσα σε " ", το item, id, quantity και name δεν έρχονται με τίποτα.

Καμία άλλη ιδέα;
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό sharkovios » 22.10.13, 4:17 pm

Καλησπέρα,
τα id,name,price απλά τα κάνεις print.
Πρέπει να τα βάλεις στο message εάν τα θέλεις να σου έρθουν.

Αυτή τη στιγμή τα κάνεις μόνο print και πουθενά assign, άρα πώς θα σου έρθουν στο mail;;

Αντώνης
sharkovios
Member
 
Posts: 17
Εγγραφή: 23.08.13, 1:26 pm

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 22.10.13, 4:29 pm

εε... πιο νέος στη php ... πεθαίνεις!.....
Μπορείς να γίνεις λίγο πιο αναλυτικός σε παρακαλώ;
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό sharkovios » 22.10.13, 4:37 pm

Υποθέτω ότι ο νέος είσαι εσύ;

το πιο εύκολο για να κάνεις και debug:

$message = var_dump($_POST['id'])."\r\n".var_dump($_POST['name'])."\r\n".var_dump($_POST['price'])."\r\n".var_dump($_POST['quantity'])

Αντώνης
sharkovios
Member
 
Posts: 17
Εγγραφή: 23.08.13, 1:26 pm

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 22.10.13, 4:52 pm

O νέος είμαι εγώ...

πριν ξέχασες το ; :D


το έβαλα αλλά τίποτα... νομίζω κάτι άλλο γίνεται.
Πάντως στη checkout.php σελίδα που βλέπω τα αποτελέσματα της αγοράς τώρα βλέπω και μια τετράδα NULL NULL NULL NULL

Και πάλι ευχαριστώ για τις απαντήσεις σας. Εαν έχεται καμία άλλη ιδέα .... έστω που θα πρέπει να ψάξω; Ακόμα και tuts.
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό notis » 22.10.13, 4:58 pm

Κώδικας: Επιλογή όλων
<body>

<?php
   
   
   
   
   print "<strong>Αιτημα προσφοράς για...</strong>:<hr/>";

for($i = 0; $i < count($_POST["id"]); $i++){
   print $_POST["id"][$i]." - ".$_POST["name"][$i]." - ".$_POST["price"][$i]." - ".$_POST["quantity"][$i]."x<br/>";
}

print "<br/><strong>Total cost:</strong><hr/> ".$_POST["cost"];

?>

<?php

$msg="";
if(isset($_POST['submit']))
{


$name =    $_POST["name"];
$from_add =   perch_member_get('email').'!';






   $to_add = "test@evrelko.com";

   $subject = "order";
$message =   "Name: ".$_POST['name']. "\r\n" ;
$message. =   "Id: ".$_POST['id']. "\r\n" ;
$message. =   "Price: ".$_POST['price']. "\r\n" ;
$message. =   "Quantity: ".$_POST['quantity']. "\r\n" ;
   
   
   $headers = "From: $from_add \r\n";
   $headers .= "Reply-To: $from_add \r\n";
   $headers .= "Return-Path: $from_add\r\n";
   $headers .= "X-Mailer: PHP \r\n";
   
   
   if(mail($to_add,$subject,$message,$headers))
   {
      $msg = "Mail sent OK";
   }
   else
   {
       $msg = "Error sending email!";
   }
}
?>



<?php echo $msg ?>
<p>
<form action='<?php echo htmlentities($_SERVER['PHP_SELF']); ?>' method='post'>
<input type='submit' name='submit' value='Submit'>
</form>
</p>


</body>

Άβαταρ μέλους
notis
Master Admin
 
Posts: 3697
Εγγραφή: 23.02.04, 1:36 pm
Τοποθεσία: Corinth

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 22.10.13, 5:12 pm

τίποτα. μόνο ότι είναι σε "" όπως "Name: "
Να γράψει κανείς στο μαιλ μπορεί. τα συγκεκριμένα δεδομένα δεν μπορεί να συγκρατίσει. Γι αυτό επιστρέφει NULL. Μήπως πρέπει κάνω κάτι άλλο;
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό notis » 22.10.13, 6:15 pm

Συγνώμη δεν είδα πως σου έρχονται σε δισδιάστατο πίνακα.
Για δοκίμασε έτσι:

Κώδικας: Επιλογή όλων

<body>

<?php
   
   
   
   
   print "<strong>Αιτημα προσφοράς για...</strong>:<hr/>";
$message = NULL;
for($i = 0; $i < count($_POST["id"]); $i++){
   print $_POST["id"][$i]." - ".$_POST["name"][$i]." - ".$_POST["price"][$i]." - ".$_POST["quantity"][$i]."x<br/>";
   $message.=   "Name: ".$_POST['name'][$i]. "\r\n" ;
   $message.=   "Id: ".$_POST['id'][$i]. "\r\n" ;
   $message.=   "Price: ".$_POST['price'][$i]. "\r\n" ;
   $message.=   "Quantity: ".$_POST['quantity'][$i]. "\r\n\r\n" ;
}

print "<br/><strong>Total cost:</strong><hr/> ".$_POST["cost"];
$message.=   "Total cost: ".$_POST['cost']. "\r\n\r\n" ;
?>

<?php

$msg="";
if(isset($_POST['submit']))
{


   $name =    $_POST["name"];
   $from_add =   perch_member_get('email').'!';
   $to_add = "test@evrelko.com";
   $subject = "order";
   $headers = "From: $from_add \r\n";
   $headers .= "Reply-To: $from_add \r\n";
   $headers .= "Return-Path: $from_add\r\n";
   $headers .= "X-Mailer: PHP \r\n";
   
   
   if(mail($to_add,$subject,$message,$headers))
   {
      $msg = "Mail sent OK";
   }
   else
   {
       $msg = "Error sending email!";
   }
}
?>



<?php echo $msg ?>
<p>
<form action='<?php echo htmlentities($_SERVER['PHP_SELF']); ?>' method='post'>
<input type='submit' name='submit' value='Submit'>
</form>
</p>


</body>

Άβαταρ μέλους
notis
Master Admin
 
Posts: 3697
Εγγραφή: 23.02.04, 1:36 pm
Τοποθεσία: Corinth

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 22.10.13, 6:46 pm

Θα σκάσω... τιποτα παλι. δυο λεκτικά έβγαλε μόνο "Τotal cost".
Θα μπορούσε να είναι κάποιο permission, πχ server;
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό notis » 22.10.13, 7:21 pm

Στην οθόνη σου εμφανίζει τα προϊόντα που πρέπει να σου έρθουν σαν παραγγελία στο e-mail?
Γιατί αν δεν σου τα εμφανίζει, τότε ο κώδικας που μας δίνεις δεν περιέχει τα προϊόντα της παραγγελίας...
Άβαταρ μέλους
notis
Master Admin
 
Posts: 3697
Εγγραφή: 23.02.04, 1:36 pm
Τοποθεσία: Corinth

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 22.10.13, 7:36 pm

Nαί στο checkout μου τα δείχνει κανονικά και όλα...
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό sharkovios » 22.10.13, 8:38 pm

Απο ότι φαίνεται ο δισδιάστατος πίνακας είναι κενός.
Γιατί έχει πίνακα; Πώς γεμίζει αυτός ο πίνακας; Από φόρμα..

Στείλε όλον το κώδικα να του ρίξουμε μια ματιά

Αντώνης
sharkovios
Member
 
Posts: 17
Εγγραφή: 23.08.13, 1:26 pm

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 23.10.13, 3:54 pm

Aυτός είναι ο κώδικας από το CMS (perch) στη σελίδα που περιέχει το content
Κώδικας: Επιλογή όλων
  <div class="boxproduct">
 
 
 
    <div class="imgproduct"> 
         <a href="<perch:content id="image" type="image"/>" data-lightbox="product-img" >

<img src="<perch:content id="image" type="image"  label="Φωτογραφία" width="170" height="170" crop="true" />" alt="<perch:content id="logoalt" type="text" label="Alt text" />" />
</a>
</div>



    <div class="product-info">

   <div class="product-title">
      <perch:content type="text" id="heading" label="Τίτλος" title="true" />
   </div>

   
   <div class="product-text">
       <perch:content id="body" type="textarea" label="Βασικό κείμενο" textile="true" editor="markitup" />
   </div>
   
   </div>
   
   
    <div class="product-spec">
   
       <perch:content id="body2" type="textarea" label="Τεχνικά χαρακτηριστικά" textile="true" editor="markitup" />
    </div>
     
     
      <div class="product-onlinebox">
          <div class="item" data-id="<perch:content type="text" id="code" label="Κωδικός" required="true" order="1" />"
          data-name="<perch:content type="text" id="onoma-eidous" label="Όνομα είδους" order="2" />"
          data-price="<perch:content type="text" id="price" label="Τιμή με ΦΠΑ" required="true" order="3" />">
            <p>
              <button class="add-to-cart" type="button">στο καλάθι</button>
            </p>
          </div>
        </div>
   </div>


Και αυτός ο κώδικας είναι σε σελίδα checkout.php του cart αρχικά
Κώδικας: Επιλογή όλων
<?php

print "<strong>You ordered</strong>:<hr/>";

for($i = 0; $i < count($_POST["id"]); $i++){
   print $_POST["id"][$i]." - ".$_POST["name"][$i]." - ".$_POST["price"][$i]." - ".$_POST["quantity"][$i]."x<br/>";
}

print "<br/><strong>Total cost:</strong><hr/> ".$_POST["cost"];


?>


Στην αρχή του ποστ ο κώδικας έχει οτι άλλο έχω βάλει εγώ αλλίως ο αρχικός έιναι ο ανωτέρο.
Μπορείτε να δείτε και από το site www.evrelko.com
Βοηθάνε αυτά;
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό sharkovios » 23.10.13, 4:07 pm

Λοιπόν στο site σου αφού βάλω το είδος στο καλάθι με πάει στο checkout.php και μου λέει:

<strong>Αιτημα προσφοράς για...</strong>:<hr/>123 - dsf - 324 € - 1x<br/><br/><strong>Total cost:</strong><hr/> 324.00 €

και μετά έχεις ένα submit, όπου, από ότι κατάλαβα, πάει να στείλει το Μειλ.
Αν είναι έτσι, τότε από την μία φόρμα στην άλλη δεν περνάνε οι μεταβλητές γιατί δεν υπάρχει φόρμα με πεδία.

Αν βάλεις μερικά hidden fields με value=Τα πεδία που θες να περάσεις, θα είσαι κομπλέ.


Αντώνης
sharkovios
Member
 
Posts: 17
Εγγραφή: 23.08.13, 1:26 pm

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 23.10.13, 6:26 pm

Εννοής να βάλω στη checkout.php
αυτό:

<input type="hidden" name="cost" value="$_POST['cost']" />
.... γιατί πάλι δεν πέρνω τίποτα....

Δεν καταλαβαίνω πως γίνεται εφόσων οι τιμές αναγράφονται στη σελίδα να μην μπορεί να δώσει στο μαιλ;
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό sharkovios » 23.10.13, 7:35 pm

Για βάλε αυτόν τον κώδικα και πες μου

Κώδικας: Επιλογή όλων

<body>

<?php
   
   
$msg="";
if(!isset($_POST['submit']))
{   
   
      print "<strong>Αιτημα προσφοράς για...</strong>:<hr/>";
   $message = NULL;
   for($i = 0; $i < count($_POST["id"]); $i++){
      print $_POST["id"][$i]." - ".$_POST["name"][$i]." - ".$_POST["price"][$i]." - ".$_POST["quantity"][$i]."x<br/>";
      $message.=   "Name: ".$_POST['name'][$i]. "\r\n" ;
      $message.=   "Id: ".$_POST['id'][$i]. "\r\n" ;
      $message.=   "Price: ".$_POST['price'][$i]. "\r\n" ;
      $message.=   "Quantity: ".$_POST['quantity'][$i]. "\r\n\r\n" ;
   }

   print "<br/><strong>Total cost:</strong><hr/> ".$_POST["cost"];
   $message.=   "Total cost: ".$_POST['cost']. "\r\n\r\n" ;
   
} else {
   $message = $_POST['message'];
   $name =    $_POST["name"];
   $from_add =   perch_member_get('email').'!';
   $to_add = "test@evrelko.com";
   $subject = "order";
   $headers = "From: $from_add \r\n";
   $headers .= "Reply-To: $from_add \r\n";
   $headers .= "Return-Path: $from_add\r\n";
   $headers .= "X-Mailer: PHP \r\n";
   
   
   if(mail($to_add,$subject,$message,$headers))
   {
      $msg = "Mail sent OK";
   }
   else
   {
       $msg = "Error sending email!";
   }
}
?>



<?php echo $msg ?>
<p>
<form action='<?php echo htmlentities($_SERVER['PHP_SELF']); ?>' method='post'>
<input type="hidden" name="message" value="$_POST['message']" />
<input type='submit' name='submit' value='Submit'>
</form>
</p>


</body>

sharkovios
Member
 
Posts: 17
Εγγραφή: 23.08.13, 1:26 pm

Re: προβλημα με php και email

Δημοσίευσηαπό typografika » 23.10.13, 8:00 pm

To έβαλα, αλλά πάλι πήρα αυτο: $_POST['message'] ως λεκτικό

Από την άλλη έβαλα αυτό:
Κώδικας: Επιλογή όλων
<?php include('perch/runtime.php'); ?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">

   <title>Online παραγγελία</title>

</head>



<body>
<?php
   
   
   
   print "<strong>Αιτημα προσφοράς για...</strong>:<hr/>";
for($i = 0; $i < count($_POST["id"]); $i++){
   print $_POST["id"][$i]." - ".$_POST["name"][$i]." - ".$_POST["price"][$i]." - ".$_POST["quantity"][$i]."x<br/>";
}
print "<br/><strong>Total cost:</strong><hr/> ".$_POST["cost"];
?>

<?php

$message="";
$to="test@evrelko.com";
$subject="This is a message from Page X";
foreach ($_POST as $key=>$value) {
    $message.=$key.": " . $value . "\n\r";
}
$sm=mail($to, $subject, $message);

?>
<input type="hidden" name="name[]" value="$_POST["name"]"/>
<p>
<form action='<?php echo htmlentities($_SERVER['PHP_SELF']); ?>' method='post'>
<input type='submit' name='submit' value='Submit'>
</form>
</p>


</body>





</html>


και μου έδωσε πίσω αυτό:

id: Array

name: Array

price: Array

quantity: Array

cost: 324.00 €

Οπως βλέπεις επιτυχώς παίρνω το συνολικό κόστος, αλλά τα άλλα id, name, price, quantity..... μου δίνει Array.....μη γελάσεις αλλά τι είναι αυτό το Αrray
Άβαταρ μέλους
typografika
Member
 
Posts: 148
Εγγραφή: 23.03.08, 10:30 am

Re: προβλημα με php και email

Δημοσίευσηαπό sharkovios » 23.10.13, 8:09 pm

Για τα Arrays βλέπε εδώ.
http://php.net/manual/en/language.types.array.php

Ο κώδικάς καλα έκανε και σου είπε Array, γιατί αυτό ακριβώς έχεις.

Αλλαξε αυτό:
Κώδικας: Επιλογή όλων
foreach ($_POST as $key=>$value) {
    $message.=$key.": " . $value . "\n\r";
}


σε αυτό:
Κώδικας: Επιλογή όλων
    $message.=var_export($_POST);


Και κάντο post εδω

Αντώνης
sharkovios
Member
 
Posts: 17
Εγγραφή: 23.08.13, 1:26 pm

Επόμενο

Επιστροφή στο II.III Προγραμματισμός + Τεχνολογία ανοιχτού κώδικα

Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση: MSN [Bot] και 0 επισκέπτες

Visual Communication Designers Club

Το Visual Communication Designers Club, το μεγαλύτερο Ελληνικό online design forum, αποτελεί μια Ελληνική κοινότητα σχεδιαστών οπτικής επικοινωνίας, υπό την ευρύτερη έννοια του όρου, θέλοντας να συμπεριλάβει στα μέλη της κάθε ειδικότητα και βαθμίδα όσων σπουδάζουν ή εργάζονται στον χώρο της επικοινωνίας, έντυπης, διαδικτυακής, τρισδιάστατης ή εφαρμογών πολυμέσων