Оператор PHP If внутри else

#php #mysql #variables #if-statement

#php #mysql #переменные #if-оператор

Вопрос:

Новичок в php и, похоже, не может найти в Интернете никакой информации о том, как сделать следующее. Мне нужно добавить следующий код после запроса mysql в приведенный ниже код, но я не уверен, как это сделать:

 $membership_type = 'full_member';

if ($item_number == 150) { mysql_query("INSERT INTO members (membership_type) VALUES('". mysql_escape_string($membership_type) ."') ") or die(mysql_error());}
  

Необходимо добавить его сюда под запросом mysql.

     if (!$fp) {
// HTTP ERROR
} else {
fputs ($fp, $header . $req);
while (!feof($fp)) {
$res = fgets ($fp, 1024);
if (strcmp ($res, "VERIFIED") == 0) {

// PAYMENT VALIDATED amp; VERIFIED!

$sender_email = $_POST['payer_email'];
$customerid = $_POST['custom'];

$item_name = $_POST['item_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'];





mysql_query("INSERT INTO paypal (sender_email, customerid, item_name, item_number, payment_status, payment_amount, payment_currency, txn_id, receiver_email) VALUES('". mysql_escape_string($sender_email) ."', '". mysql_escape_string($customerid) ."', '". mysql_escape_string($item_name) ."', '". mysql_escape_string($item_number) ."', '". mysql_escape_string($payment_status) ."', '". mysql_escape_string($payment_amount) ."', '". mysql_escape_string($payment_currency) ."', '". mysql_escape_string($txn_id) ."', '". mysql_escape_string($receiver_email) ."') ") or die(mysql_error());


}
  

Дайте мне знать, если я уловил какой-либо смысл. С нетерпением ждем ваших ответов.

Комментарии:

1. Я не понимаю, в чем проблема.

2. В чем проблема? Вы сами сказали: добавьте его после mysql_query() .

3. Если возможно, попробуйте уменьшить размер вашего примера (например, сохраните $sender_email и удалите остальные переменные). Кроме того, попробуйте сделать отступ в коде (самый быстрый способ вставить его в вопрос stackoverflow: отметьте код, нажмите Ctrl K). И мне жаль говорить, что я не понимаю вашей проблемы. Почему вы не можете просто добавить первые строки ниже mysql_query во втором фрагменте кода?

4. В чем проблема? синтаксическая ошибка? запрос не выполняется? Чего вы ожидаете от кода. Более того, в else есть 2 открытые скобки, но нет закрывающих? Чего вы хотите от двух запросов insert.

5. Вы пробовали это? сначала вы должны попробовать это. Если вы столкнетесь с какой-либо проблемой, спросите других.

Ответ №1:

http://php.net/manual/en/function.mysql-insert-id.php используйте этот инструмент.

итак, после вашего запроса поместите:

 $membership_type = 'full_member';
if ($item_number == 150) { mysql_query("UPDATE members SET membership_type ='". mysql_escape_string($membership_type) ."' WHERE ID =".mysql_insert_id()) or die(mysql_error());}