y. 'file' => _wp_relative_upload_path( $image_file ), ); /** * Filters the meta data for the new image created by editing an existing image. * * @since 5.5.0 * * @param array $new_image_meta Meta data for the new image. * @param int $new_attachment_id Attachment post ID for the new image. * @param int $attachment_id Attachment post ID for the edited (parent) image. */ $new_image_meta = apply_filters( 'wp_edited_image_metadata', $new_image_meta, $new_attachment_id, $attachment_id ); wp_update_attachment_metadata( $new_attachment_id, $new_image_meta ); $response = $this->prepare_item_for_response( get_post( $new_attachment_id ), $request ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $new_attachment_id ) ) ); return $response; } /** * Prepares a single attachment for create or update. * * @since 4.7.0 * * @param WP_REST_Request $request Request object. * @return stdClass|WP_Error Post object. */ protected function prepare_item_for_database( $request ) { $prepared_attachment = parent::prepare_item_for_database( $request ); // Attachment caption (post_excerpt internally). if ( isset( $request['caption'] ) ) { if ( is_string( $request['caption'] ) ) { $prepared_attachment->post_excerpt = $request['caption']; } elseif ( isset( $request['caption']['raw'] ) ) { $prepared_attachment->post_excerpt = $request['caption']['raw']; } } // Attachment description (post_content internally). if ( isset( $request['description'] ) ) { if ( is_string( $request['description'] ) ) { $prepared_attachment->post_content = $request['description']; } elseif ( isset( $request['description']['raw'] ) ) { $prepared_attachment->post_content = $request['description']['raw']; } } if ( isset( $request['post'] ) ) { $prepared_attachment->post_parent = (int) $request['post']; } return $prepared_attachment; } /** * Prepares a single attachment output for response. * * @since 4.7.0 * @since 5.9.0 Renamed `$post` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Post $item Attachment object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $post = $item; $response = parent::prepare_item_for_response( $post, $request ); $fields = $this->get_fields_for_response( $request ); $data = $response->get_data(); if ( in_array( 'description', $fields, true ) ) { $data['description'] = array( 'raw' => $post->post_content, /** This filter is documented in wp-includes/post-template.php */ 'rendered' => apply_filters( 'the_content', $post->post_content ), ); } if ( in_array( 'caption', $fields, true ) ) { /** This filter is documented in wp-includes/post-template.php */ $caption = apply_filters( 'get_the_excerpt', $post->post_excerpt, $post ); /** This filter is documented in wp-includes/post-template.php */ $caption = apply_filters( 'the_excerpt', $caption ); $data['caption'] = array( 'raw' => $post->post_excerpt, 'rendered' => $caption, ); } if ( in_array( 'alt_text', $fields, true ) ) { $data['alt_text'] = get_post_meta( $post->ID, '_wp_attachment_image_alt', true ); } if ( in_array( 'media_type', $fields, true ) ) { $data['media_type'] = wp_attachment_is_image( $post->ID ) ? 'image' : 'file'; } if ( in_array( 'mime_type', $fields, true ) ) { $data['mime_type'] = $post->post_mime_type; } if ( in_array( 'media_details', $fields, true ) ) { $data['media_details'] = wp_get_attachment_metadata( $post->ID ); // Ensure empty details is an empty object. if ( empty( $data['media_details'] ) ) { $data['media_details'] = new stdClass; } elseif ( ! empty( $data['media_details']['sizes'] ) ) { foreach ( $data['media_details']['sizes'] as $size => &$size_data ) { if ( isset( $size_data['mime-type'] ) ) { $size_data['mime_type'] = $size_data['mime-type']; unset( $size_data['mime-type'] ); } // Use the same method image_downsize() does. $image_src = wp_get_attachment_image_src( $post->ID, $size ); if ( ! $image_src ) { continue; } $size_data['source_url'] = $image_src[0]; } $full_src = wp_get_attachment_image_src( $post->ID, 'full' ); if ( ! empty( $full_src ) ) { $data['media_details']['sizes']['full'] = array( 'file' => wp_basename( $full_src[0] ), 'width' => $full_src[1], 'height' => $full_src[2], 'mime_type' => $post->post_mime_type, 'source_url' => $full_src[0], ); } } else { $data['media_details']['sizes'] = new stdClass; } } if ( in_array( 'post', $fields, true ) ) { $data['post'] = ! empty( $post->post_parent ) ? (int) $post->post_parent : null; } if ( in_array( 'source_url', $fields, true ) ) { $data['source_url'] = wp_get_attachment_url( $post->ID ); } if ( in_array( 'missing_image_sizes', $fields, true ) ) { require_once ABSPATH . 'wp-admin/includes/image.php'; $data['missing_image_sizes'] = array_keys( wp_get_missing_image_subsizes( $post->ID ) ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->filter_response_by_context( $data, $context ); $links = $response->get_links(); // Wrap the data in a response object. $response = rest_ensure_response( $data ); foreach ( $links as $rel => $rel_links ) { foreach ( $rel_links as $link ) { $response->add_link( $rel, $link['href'], $link['attributes'] ); } } /** * Filters an attachment returned from the REST API. * * Allows modification of the attachment right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Post $post The original attachment post. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_attachment', $response, $post, $request ); } /** * Retrieves the attachment's schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema as an array. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = parent::get_item_schema(); $schema['properties']['alt_text'] = array( 'description' => __( 'Alternative text to display when attachment is not displayed.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ); $schema['properties']['caption'] = array( 'description' => __( 'The attachment caption.' ), 'type' => 'object', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => null, // Note: sanitization implemented in self::prepare_item_for_database(). 'validate_callback' => null, // Note: validation implemented in self::prepare_item_for_database(). ), 'properties' => array( 'raw' => array( 'description' => __( 'Caption for the attachment, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML caption for the attachment, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ); $schema['properties']['description'] = array( 'description' => __( 'The attachment description.' ), 'type' => 'object', 'context' => array( 'view', 'edit' ), 'arg_options' => array( 'sanitize_callback' => null, // Note: sanitization implemented in self::prepare_item_for_database(). 'validate_callback' => null, // Note: validation implemented in self::prepare_item_for_database(). ), 'properties' => array( 'raw' => array( 'description' => __( 'Description for the attachment, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML description for the attachment, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), ), ); $schema['properties']['media_type'] = array( 'description' => __( 'Attachment type.' ), 'type' => 'string', 'enum' => array( 'image', 'file' ), 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['mime_type'] = array( 'description' => __( 'The attachment MIME type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['media_details'] = array( 'description' => __( 'Details about the media file, specific to its type.' ), 'type' => 'object', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['post'] = array( 'description' => __( 'The ID for the associated post of the attachment.' ), 'type' => 'integer', 'context' => array( 'view', 'edit' ), ); $schema['properties']['source_url'] = array( 'description' => __( 'URL to the original attachment file.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['missing_image_sizes'] = array( 'description' => __( 'List of the missing image sizes of the attachment.' ), 'type' => 'array', 'items' => array( 'type' => 'string' ), 'context' => array( 'edit' ), 'readonly' => true, ); unset( $schema['properties']['password'] ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Handles an upload via raw POST data. * * @since 4.7.0 * * @param array $data Supplied file data. * @param array $headers HTTP headers from the request. * @return array|WP_Error Data from wp_handle_sideload(). */ protected function upload_from_data( $data, $headers ) { if ( empty( $data ) ) { return new WP_Error( 'rest_upload_no_data', __( 'No data supplied.' ), array( 'status' => 400 ) ); } if ( empty( $headers['content_type'] ) ) { return new WP_Error( 'rest_upload_no_content_type', __( 'No Content-Type supplied.' ), array( 'status' => 400 ) ); } if ( empty( $headers['content_disposition'] ) ) { return new WP_Error( 'rest_upload_no_content_disposition', __( 'No Content-Disposition supplied.' ), array( 'status' => 400 ) ); } $filename = self::get_filename_from_disposition( $headers['content_disposition'] ); if ( empty( $filename ) ) { return new WP_Error( 'rest_upload_invalid_disposition', __( 'Invalid Content-Disposition supplied. Content-Disposition needs to be formatted as `attachment; filename="image.png"` or similar.' ), array( 'status' => 400 ) ); } if ( ! empty( $headers['content_md5'] ) ) { $content_md5 = array_shift( $headers['content_md5'] ); $expected = trim( $content_md5 ); $actual = md5( $data ); if ( $expected !== $actual ) { return new WP_Error( 'rest_upload_hash_mismatch', __( 'Content hash did not match expected.' ), array( 'status' => 412 ) ); } } // Get the content-type. $type = array_shift( $headers['content_type'] ); // Include filesystem functions to get access to wp_tempnam() and wp_handle_sideload(). require_once ABSPATH . 'wp-admin/includes/file.php'; // Save the file. $tmpfname = wp_tempnam( $filename ); $fp = fopen( $tmpfname, 'w+' ); if ( ! $fp ) { return new WP_Error( 'rest_upload_file_error', __( 'Could not open file handle.' ), array( 'status' => 500 ) ); } fwrite( $fp, $data ); fclose( $fp ); // Now, sideload it in. $file_data = array( 'error' => null, 'tmp_name' => $tmpfname, 'name' => $filename, 'type' => $type, ); $size_check = self::check_upload_size( $file_data ); if ( is_wp_error( $size_check ) ) { return $size_check; } $overrides = array( 'test_form' => false, ); $sideloaded = wp_handle_sideload( $file_data, $overrides ); if ( isset( $sideloaded['error'] ) ) { @unlink( $tmpfname ); return new WP_Error( 'rest_upload_sideload_error', $sideloaded['error'], array( 'status' => 500 ) ); } return $sideloaded; } /** * Parses filename from a Content-Disposition header value. * * As per RFC6266: * * content-disposition = "Content-Disposition" ":" * disposition-type *( ";" disposition-parm ) * * disposition-type = "inline" | "attachment" | disp-ext-type * ; case-insensitive * disp-ext-type = token * * disposition-parm = filename-parm | disp-ext-parm * * filename-parm = "filename" "=" value * | "filename*" "=" ext-value * * disp-ext-parm = token "=" value * | ext-token "=" ext-value * ext-token = * * @since 4.7.0 * * @link https://tools.ietf.org/html/rfc2388 * @link https://tools.ietf.org/html/rfc6266 * * @param string[] $disposition_header List of Content-Disposition header values. * @return string|null Filename if available, or null if not found. */ public static function get_filename_from_disposition( $disposition_header ) { // Get the filename. $filename = null; foreach ( $disposition_header as $value ) { $value = trim( $value ); if ( strpos( $value, ';' ) === false ) { continue; } list( $type, $attr_parts ) = explode( ';', $value, 2 ); $attr_parts = explode( ';', $attr_parts ); $attributes = array(); foreach ( $attr_parts as $part ) { if ( strpos( $part, '=' ) === false ) { continue; } list( $key, $value ) = explode( '=', $part, 2 ); $attributes[ trim( $key ) ] = trim( $value ); } if ( empty( $attributes['filename'] ) ) { continue; } $filename = trim( $attributes['filename'] ); // Unquote quoted filename, but after trimming. if ( substr( $filename, 0, 1 ) === '"' && substr( $filename, -1, 1 ) === '"' ) { $filename = substr( $filename, 1, -1 ); } } return $filename; } /** * Retrieves the query params for collections of attachments. * * @since 4.7.0 * * @return array Query parameters for the attachment collection as an array. */ public function get_collection_params() { $params = parent::get_collection_params(); $params['status']['default'] = 'inherit'; $params['status']['items']['enum'] = array( 'inherit', 'private', 'trash' ); $media_types = $this->get_media_types(); $params['media_type'] = array( 'default' => null, 'description' => __( 'Limit result set to attachments of a particular media type.' ), 'type' => 'string', 'enum' => array_keys( $media_types ), ); $params['mime_type'] = array( 'default' => null, 'description' => __( 'Limit result set to attachments of a particular MIME type.' ), 'type' => 'string', ); return $params; } /** * Handles an upload via multipart/form-data ($_FILES). * * @since 4.7.0 * * @param array $files Data from the `$_FILES` superglobal. * @param array $headers HTTP headers from the request. * @return array|WP_Error Data from wp_handle_upload(). */ protected function upload_from_file( $files, $headers ) { if ( empty( $files ) ) { return new WP_Error( 'rest_upload_no_data', __( 'No data supplied.' ), array( 'status' => 400 ) ); } // Verify hash, if given. if ( ! empty( $headers['content_md5'] ) ) { $content_md5 = array_shift( $headers['content_md5'] ); $expected = trim( $content_md5 ); $actual = md5_file( $files['file']['tmp_name'] ); if ( $expected !== $actual ) { return new WP_Error( 'rest_upload_hash_mismatch', __( 'Content hash did not match expected.' ), array( 'status' => 412 ) ); } } // Pass off to WP to handle the actual upload. $overrides = array( 'test_form' => false, ); // Bypasses is_uploaded_file() when running unit tests. if ( defined( 'DIR_TESTDATA' ) && DIR_TESTDATA ) { $overrides['action'] = 'wp_handle_mock_upload'; } $size_check = self::check_upload_size( $files['file'] ); if ( is_wp_error( $size_check ) ) { return $size_check; } // Include filesystem functions to get access to wp_handle_upload(). require_once ABSPATH . 'wp-admin/includes/file.php'; $file = wp_handle_upload( $files['file'], $overrides ); if ( isset( $file['error'] ) ) { return new WP_Error( 'rest_upload_unknown_error', $file['error'], array( 'status' => 500 ) ); } return $file; } /** * Retrieves the supported media types. * * Media types are considered the MIME type category. * * @since 4.7.0 * * @return array Array of supported media types. */ protected function get_media_types() { $media_types = array(); foreach ( get_allowed_mime_types() as $mime_type ) { $parts = explode( '/', $mime_type ); if ( ! isset( $media_types[ $parts[0] ] ) ) { $media_types[ $parts[0] ] = array(); } $media_types[ $parts[0] ][] = $mime_type; } return $media_types; } /** * Determine if uploaded file exceeds space quota on multisite. * * Replicates check_upload_size(). * * @since 4.9.8 * * @param array $file $_FILES array for a given file. * @return true|WP_Error True if can upload, error for errors. */ protected function check_upload_size( $file ) { if ( ! is_multisite() ) { return true; } if ( get_site_option( 'upload_space_check_disabled' ) ) { return true; } $space_left = get_upload_space_available(); $file_size = filesize( $file['tmp_name'] ); if ( $space_left < $file_size ) { return new WP_Error( 'rest_upload_limited_space', /* translators: %s: Required disk space in kilobytes. */ sprintf( __( 'Not enough space to upload. %s KB needed.' ), number_format( ( $file_size - $space_left ) / KB_IN_BYTES ) ), array( 'status' => 400 ) ); } if ( $file_size > ( KB_IN_BYTES * get_site_option( 'fileupload_maxk', 1500 ) ) ) { return new WP_Error( 'rest_upload_file_too_big', /* translators: %s: Maximum allowed file size in kilobytes. */ sprintf( __( 'This file is too big. Files must be less than %s KB in size.' ), get_site_option( 'fileupload_maxk', 1500 ) ), array( 'status' => 400 ) ); } // Include multisite admin functions to get access to upload_is_user_over_quota(). require_once ABSPATH . 'wp-admin/includes/ms.php'; if ( upload_is_user_over_quota( false ) ) { return new WP_Error( 'rest_upload_user_quota_exceeded', __( 'You have used your space quota. Please delete files before uploading.' ), array( 'status' => 400 ) ); } return true; } /** * Gets the request args for the edit item route. * * @since 5.5.0 * * @return array */ protected function get_edit_media_item_args() { return array( 'src' => array( 'description' => __( 'URL to the edited image file.' ), 'type' => 'string', 'format' => 'uri', 'required' => true, ), 'modifiers' => array( 'description' => __( 'Array of image edits.' ), 'type' => 'array', 'minItems' => 1, 'items' => array( 'description' => __( 'Image edit.' ), 'type' => 'object', 'required' => array( 'type', 'args', ), 'oneOf' => array( array( 'title' => __( 'Rotation' ), 'properties' => array( 'type' => array( 'description' => __( 'Rotation type.' ), 'type' => 'string', 'enum' => array( 'rotate' ), ), 'args' => array( 'description' => __( 'Rotation arguments.' ), 'type' => 'object', 'required' => array( 'angle', ), 'properties' => array( 'angle' => array( 'description' => __( 'Angle to rotate clockwise in degrees.' ), 'type' => 'number', ), ), ), ), ), array( 'title' => __( 'Crop' ), 'properties' => array( 'type' => array( 'description' => __( 'Crop type.' ), 'type' => 'string', 'enum' => array( 'crop' ), ), 'args' => array( 'description' => __( 'Crop arguments.' ), 'type' => 'object', 'required' => array( 'left', 'top', 'width', 'height', ), 'properties' => array( 'left' => array( 'description' => __( 'Horizontal position from the left to begin the crop as a percentage of the image width.' ), 'type' => 'number', ), 'top' => array( 'description' => __( 'Vertical position from the top to begin the crop as a percentage of the image height.' ), 'type' => 'number', ), 'width' => array( 'description' => __( 'Width of the crop as a percentage of the image width.' ), 'type' => 'number', ), 'height' => array( 'description' => __( 'Height of the crop as a percentage of the image height.' ), 'type' => 'number', ), ), ), ), ), ), ), ), 'rotation' => array( 'description' => __( 'The amount to rotate the image clockwise in degrees. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'integer', 'minimum' => 0, 'exclusiveMinimum' => true, 'maximum' => 360, 'exclusiveMaximum' => true, ), 'x' => array( 'description' => __( 'As a percentage of the image, the x position to start the crop from. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'number', 'minimum' => 0, 'maximum' => 100, ), 'y' => array( 'description' => __( 'As a percentage of the image, the y position to start the crop from. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'number', 'minimum' => 0, 'maximum' => 100, ), 'width' => array( 'description' => __( 'As a percentage of the image, the width to crop the image to. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'number', 'minimum' => 0, 'maximum' => 100, ), 'height' => array( 'description' => __( 'As a percentage of the image, the height to crop the image to. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'number', 'minimum' => 0, 'maximum' => 100, ), ); } } سنگ کلیه

همه چیز درباره سنگ کلیه

  1. صفحه اصلی
  2. /
  3. کلیه
  4. /
  5. همه چیز درب...

سنگ کلیه، به مجموعه رسوباتی گفته می شود که به علت افزایش میزان غلظت و املاح موجود در ادرار تشکیل می شوند. شکل گیری سنگ های کلیه در اثر علل و عوامل مختلفی است که در ادامه به طور مفصل به آن ها خواهیم پرداخت. در ادامه مقاله با ما همراه باشید تا در خصوص علائم، علل، تشخیص و درمان سنگ کلیه اطلاعات جامعی به دست آورید…

سنگ کلیه چیست؟


سنگ کلیه (که با نامهای renal calculi, nephrolithiasis  یا urolithiasis نیز از آن یاد می‌شود) رسوبات سختی هستند که از مواد معدنی و نمک تشکیل شده اند و در داخل کلیه ها تشکیل می شوند. رژیم غذایی نامناسب، اضافه وزن، برخی از مشکلات پزشکی و  مصرف برخی داروها و مکمل های غذایی از جمله دلایل تشکیل سنگ کلیه هستند. سنگ کلیه می‌تواند هر بخشی از دستگاه ادراری شما را تحت تاثیر قرار دهد. از کلیه ها گرفته تا مثانه هر بخشی میتواند درگیر مسائل و مشکلات سنگ کلیه شود. غلظت ادرار یکی از شرایطی است که موجب تبلور ذرات داخل ادرار و بوجود آمدن سنگ کلیه میگردد.

عوارض ابتلا به سنگ کلیه


درگیری با سنگ کلیه باعث بروز درد در پهلوی سمت چپ یا راست بدن می‌شود. سنگ دستگاه ادراری یکی از ناراحت‌کننده‌ترین بیماری‌ها است. اغلب بیماران مبتلا به سنگهای کلیه معمولاً در سالهای اولیه بلوغ مراجعه می کنند. انواع مختلف سنگ ادراری وجود دارد ولی اغلب سنگها از جنس کربنات کلسیم هستند.

سنگ‌ها در لگنچه، میزنای، مثانه و در پیشابراه دیده می‌شوند. رژیم غنی از کلسیم، سدیم، پروتئین و همچنین عدم تحرک افراد مبتلا به هیپر کلسیوی نوع دو – افراد مبتلا به بیماری‌های گوارشی مثل التهاب روده یا ایلئوستومی، سابقه ابتلا به عفونت ادراری و بیماری‌های متابولیک، نقرس، عدم تحرک در ابتلا به سنگ نقش دارند.

 کلیه ها عمل تصفیه خون را با خارج کردن مقدار اضافی سدیم(نمک) و دیگر مواد زاید و محلول در آب انجام می دهد.اشباع و غلیظ شدن ادرار باعث ته نشینی و رسوب ترکیبات آن در کلیه ها می شود و در نتیجه سنگ کلیه به وجود می آید که قابل حل در ادرار نیست.اجزای غیر قابل حل با هم جمع می شوند و تبدیل به سنگ سختی می شود.اسیدی یا قلیایی بودن ادرار نیز باعث تشکیل سنگ می شود.

 

انواع سنگ های کلیه


به طور کلی سنگ های کلیه از لحاظ ترکیبات تشکیل دهنده ی خود، بر چهار نوع تقسیم بندی می شوند.

  • سنگ های کلسیمی شامل سنگ های اگزالات کلسیمی و سنگ های فسفات کلسیمی
  • سنگ های اسید اوریکی
  • سنگ های عفونی یا استراویت
  • سنگ های سیستین

علائم شکل گیری سنگ کلیه


درد حاد، اغلب ناشی از گیرکردن سنگ در مجاری ادراری است وگرنه خود سنگ اغلب علامتی ندارد. انسداد حالب، عفونت، خیز درد شدید در منطقه دنده‌ای مهره‌ای، تهوع، استفراغ و اسهال است. درد بسیار شدید و شبیه به درد زایمان است، هماچوری یا خون ادراری در این افراد دیده می‌شود.
هدف اصلی، درمان درد و  جلوگیری از تخریب نفرون در طولانی مدت است. نفرون نام واحدهای سازنده کلیه است که لوله پیچیده‌ای متشکل از یک لایه بافت پوششی است و در یک انتها بسته و در انتهای دیگر به درون قسمت لگنچه باز می‌شود. سنگ های کلیه در مراحل اولیه شکل گیری تحرکی ندارند، اما به محض این که شروع به حرکت کنند تمامی علائم آن  نظیر درد و اختلال در ادرار بروز و ظهور پیدا خواهند کرد. مهم ترین این نشانه ها:

  • درد های شدید و متوالی در بخش های پشت و پهلو
  • درد هایی در بخش های تحتانی دنده ها که به بخش های پایینی شکم سرایت پیدا می کند.
  • تجربه سوزش در هنگام ادرار کردن
  • تغییر رنگ ادرار: افراد گزارش می کنند که ادرارشان صورتی، قرمز یا قهوه ای شده است.
  • تیرگی ادرار
  • تغییر بو و بد بو شدن ادرار
  • تجربه حالت تهوع و استفراغ
  • تکرر ادرار: افراد مبتلا دائما احساس می کنند که نیاز دارند ادرارشان را تخلیه کنند و بعد از ادرار احساس تخلیه شدن کامل ندارند
  • بروز عفونت و تب و لرز در پی عفونت : برخی از افرادی که دچار عفونت می شوند احساس تب و لرز نیز در پی آن خواهد آمد
  • کاهش میزان ادرار ( حجم ادرار کمتر می شود )

سنگ-کلیه

علل شکل گیری سنگ کلیه


در ادرار انسان موادی همچون کلسیم، اسید اوریک و آگزالات وجود دارند. در مواردی که غلظت این مواد در ادرار افزایش پیدا کند، موجب تشکیل بلور هایی می شود. در نتیجه با پیشروی و افزایش میزان و سایز این سنگ ها و در نهایت حرکت آنها درد ها و سایر علائم سنگ کلیه را تجربه خواهید کرد.

سنگ کلیه چگونه تشخیص داده می شود؟


سنگ کلیه با روش های مختلفی قابل تشخیص است که مهم ترین آن ها:

  • آزمایش خون به منظور بررسی و ارزیابی مقدار کلسیم و اسید اوریک بدن
  • آزمایش ادرار
  • سونوگرافی
  • رادیو گرافی
  • سی تی اسکن

تمامی این موارد می تواند در زمینه تشخیص سنگ کلیه و مشخصات کلی آن به پزشکان متخصص کمک کند. تشخیص سایز سنگ کلیه، مهم ترین عاملی است که موجب می شود بهترین روش درمانی برای سنگ کلیه انتخاب شود. به همین دلیل در این مرحله یعنی تشخیص پزشکان نهایت دقت را خواهند داشت.

راه های دفع سنگ کلیه


 دفع سنگ کلیه می تواند بسیار دردناک باشد، اما اگر سنگ ها به موقع تشخیص داده شوند، معمولاً آسیب دائمی ایجاد نمی کنند. بسته به موقعیت خود، ممکن است برای دفع سنگ کلیه به چیزی جز مصرف داروهای مسکن و نوشیدن مقدار زیادی آب نیاز نداشته باشید. در موارد دیگر – به عنوان مثال، اگر سنگ در دستگاه ادراری گیر کند، با عفونت ادراری همراه باشد یا عوارضی ایجاد کند – ممکن است به جراحی نیاز باشد. در صورت افزایش خطر ابتلا به سنگ کلیه، ممکن است پزشک شما درمان پیشگیرانه را برای کاهش خطر ابتلا به سنگ های کلیه مکرر توصیه کند.

  • چنانچه نوع سنگ کلیه کلسیمی یا فسفری باشد، از مصرف فرآورده های لبنی، شکلات و نارگیل خودداری کنید.
  • اگر نوع سنگ کلیه فسفاته باشد، رژیم غذایی حاوی اسیدها به اسیدی نگه داشتن مختصر ادرار کمک می کند.
  • اگر نوع سنگ کلیه، اسیداوریکی یا سیستینی باشد، رژیم غذایی حاوی مواد قلیایی به قلیایی نگه داشتن مختصر ادرار کمک می کند.
  • در مورد همه انواع سنگهای کلیه،نوشیدن روزانه حداقل ۱۳ لیوان مایعات (و بیشتر از همه آب خالص ) ضروری است.
  • رژیم غذایی کم چربی و پرفیبر نیز توصیه می گردد.

در این شرایط به پزشک خود مراجعه نمایید:

  • چنانچه شما یا یکی از اعضای خانواده تان دارای علایم سنگ کلیه باشید.
  • اگر افزایش درجه حرارت تا 38/3 درجه سانتیگراد دارید.
  • بروز علایم عفونت کلیه (سوزش و ناراحتی هنگام ادرار کردن یا احساس مکرر نیاز فوری به ادرار کردن )
  • اگر دچارعلائم جدید و غیرقابل توجیه شده اید. داروهای تجویزی ممکن است با عوارض جانبی همراه باشند.

درمان-سنگ-کلیه

انواع روش های درمانی سنگ کلیه


روش های درمانی متناسب با نوع و سایز سنگ کلیه انتخاب می شوند.

در صورتی که سایز سنگ کلیه کوچک باشد، روش های زیر می تواند در درمان و دفع آن ها نقش مثمر ثمری داشته باشد:

  • افزایش میزان آب مصرفی در طول روز
  • استفاده از انواع دارو های مسکن که نیازی به نسخه ندارند
  • استفاده از دارو های شل کننده عضلات

تمامی موارد فوق می تواند در دفع و از بین رفتن عارضه های ناشی از سنگ های کلیه کوچک نقش مهمی داشته باشند. در نتیجه نیازی به انجام جراحی وجود نخواهد داشت.

درمان سنگ های کلیه بزرگ

  • سنگ شکنی : برای از بین بردن سنگ های بزرگ باید دستگاهی بکار گرفته شود که با استفاده از امواج صوتی می تواند به شکستن سنگ ها کمک کند. سنگ شکن با امواج شوک دهنده از خارج از بدن، تکنیکی است که در آن می توان بدون انجام جراحی سنگهای کلیه و حالب را درمان نمود. در این روش از امواج با انرژی بالا که قابلیت عبور از بافتهای بدن را دارند، جهت شکستن سنگ به قطعات بسیار کوچکتر استفاده می شود. بعلت اندازه کوچک سنگهای حاصله از طریق ادرار و بدون هیچ مشکلی از بدن دفع می شوند.
  • جراحی کلیه : به منظور برداشتن تمامی سنگ های داخلی آن
  • آندوسکوپی : در این روش لوله باریکی از مجرای ادرار و مثانه به داخل فرستاده می شود. بعد از بررسی و ارزیابی می توانند سنگ های کلیه را بشکنند.

  • جراحی غده پاراتیرویید : برخی از موارد مهم ترین عاملی که موجب شکل گیری سنگ کلیه می شود پرکاری غده پاراتیروئید است به همین دلیل برای از بین بردن عامل این عارضه به جراحی دست می زنند.

عوارض سنگ کلیه


ابتلاي به سنگ کليه ممکن است باعث بروز مشکلاتي از این قبیل شود:
افزايش خطر ابتلا به عفونت‌هاي ادراري يا تشديد عفونت‌هاي موجود.
آسيب‌های کليوی، که در موارد خاص ممکن است حتي کار به نارسايي حاد کليه بکشد.
پیشگیری از ابتلا به سنگ‌هاي کليه به ويژه در کساني که تنها يک کليه دارند و بيماران دچار نقص سيستم ايمني و افرادی که کليه‌هاي پيوندي دارند، از اهميت و حساسيت خاصي برخوردار است.

روش های پیشگیری از تشکیل سنگ کلیه


اگرچه عوامل متعددی در شکل گیری سنگ در کلیه و به طور کلی مجاری ادراری دخیل هستند اما با رعایت کردن نکات و انجام مواردی که در ادامه به آن اشاره میکنیم میتوان از تشکیل سنگ کلیه پیشگیری کرد.

  • افزایش نوشیدن آب
  • کاهش مصرف نمک و پروتئین حیوانی در رژیم غذایی
  • افزایش مصرف غذاهایی حاوی کلسیم
  • کاهش مصرف چای شکلات و محصولات سویا
  • کاهش مصرف چغندر
  • کاهش مصرف اسفناج

خاتمه

در بخش های مختلفی که در این مقاله تدارک دیده بودیم، به مهم ترین موضوعاتی که در زمینه سنگ کلیه مطرح می شود پرداختیم.

پیشنهاد می کنیم در صورتی که پرسشی در زمینه سنگ کلیه دارید، آن را در بخش کامنت ها با ما درمیان بگذارید. همچنین می توانید اگر تجربه ای در زمینه سنگ کلیه و درمان آن دارید، آن را با ما و سایر مخاطبین عزیز این وبسایت به اشتراک بگذارید.

دکتر محسن وریانی

دکتر محسن وریانی متولد سال ۱۳۵۴ از منطقه چهاردانگه شهرستان ساری در استان مازندران است. تحصیلات ابتدایی و دبیرستان را در محل تولد سپری کردند. در سال 1373 با قبولی در رشته پزشکی وارد دانشگاه شهید بهشتی شدند. پس از اخذ مدرک دکترای عمومی و شرکت در امتحان تخصص در سال 1384 موفق به قبولی در رشته تخصصی جراحی کلیه و مجاری ادراری دانشگاه علوم پزشکی تهران گردید.

مطالب مرتبط

مشاوره و تماس